Hi Deepak,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on v5.8-rc6]
[also build test WARNING on next-20200720]
[cannot apply to mkp-scsi/for-next scsi/for-next]
[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]
url:
https://github.com/0day-ci/linux/commits/Deepak-Ukey/pm80xx-Updates-for-t...
base: ba47d845d715a010f7b51f6f89bae32845e6acb7
config: x86_64-randconfig-s022-20200719 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-14) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-49-g707c5017-dirty
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/scsi/pm8001/pm80xx_hwi.c:81:39: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int [usertype] @@ got restricted
__le32 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:81:39: sparse: expected unsigned int [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:81:39: sparse: got restricted __le32 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:69:6: sparse: sparse: symbol
'pm80xx_pci_mem_copy' was not declared. Should it be static?
drivers/scsi/pm8001/pm80xx_hwi.c:1213:27: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 @@ got unsigned int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1213:27: sparse: expected restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:1213:27: sparse: got unsigned int
drivers/scsi/pm8001/pm80xx_hwi.c:1215:27: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1215:27: sparse: expected restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:1215:27: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1255:39: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [usertype] pageCode
@@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1255:39: sparse: expected restricted __le32
[addressable] [usertype] pageCode
drivers/scsi/pm8001/pm80xx_hwi.c:1255:39: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1256:39: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [usertype] MST_MSI
@@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1256:39: sparse: expected restricted __le32
[addressable] [usertype] MST_MSI
drivers/scsi/pm8001/pm80xx_hwi.c:1256:39: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1257:39: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [usertype]
STP_SSP_MCT_TMO @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1257:39: sparse: expected restricted __le32
[addressable] [usertype] STP_SSP_MCT_TMO
drivers/scsi/pm8001/pm80xx_hwi.c:1257:39: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1258:39: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [usertype]
STP_FRM_TMO @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1258:39: sparse: expected restricted __le32
[addressable] [usertype] STP_FRM_TMO
drivers/scsi/pm8001/pm80xx_hwi.c:1258:39: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1260:39: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [usertype]
STP_IDLE_TMO @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1260:39: sparse: expected restricted __le32
[addressable] [usertype] STP_IDLE_TMO
drivers/scsi/pm8001/pm80xx_hwi.c:1260:39: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1262:26: sparse: sparse: restricted __le32 degrades to
integer
drivers/scsi/pm8001/pm80xx_hwi.c:1263:44: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [usertype]
STP_IDLE_TMO @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1263:44: sparse: expected restricted __le32
[addressable] [usertype] STP_IDLE_TMO
drivers/scsi/pm8001/pm80xx_hwi.c:1263:44: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1266:41: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [usertype]
OPNRJT_RTRY_INTVL @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1266:41: sparse: expected restricted __le32
[addressable] [usertype] OPNRJT_RTRY_INTVL
drivers/scsi/pm8001/pm80xx_hwi.c:1266:41: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1268:48: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [usertype]
Data_Cmd_OPNRJT_RTRY_TMO @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1268:48: sparse: expected restricted __le32
[addressable] [usertype] Data_Cmd_OPNRJT_RTRY_TMO
drivers/scsi/pm8001/pm80xx_hwi.c:1268:48: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1270:48: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [usertype]
Data_Cmd_OPNRJT_RTRY_THR @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1270:48: sparse: expected restricted __le32
[addressable] [usertype] Data_Cmd_OPNRJT_RTRY_THR
drivers/scsi/pm8001/pm80xx_hwi.c:1270:48: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1272:31: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [usertype] MAX_AIP
@@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1272:31: sparse: expected restricted __le32
[addressable] [usertype] MAX_AIP
drivers/scsi/pm8001/pm80xx_hwi.c:1272:31: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1425:33: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] new_curidx_ksop @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:1425:33: sparse: expected restricted __le32
[addressable] [assigned] [usertype] new_curidx_ksop
drivers/scsi/pm8001/pm80xx_hwi.c:1425:33: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:1869:40: sparse: sparse: invalid assignment: |=
drivers/scsi/pm8001/pm80xx_hwi.c:1869:40: sparse: left side has type restricted
__le32
drivers/scsi/pm8001/pm80xx_hwi.c:1869:40: sparse: right side has type int
drivers/scsi/pm8001/pm80xx_hwi.c:3037:63: sparse: sparse: incorrect type in argument 1
(different base types) @@ expected unsigned long long [usertype] address @@ got
restricted __le64 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:3037:63: sparse: expected unsigned long long
[usertype] address
drivers/scsi/pm8001/pm80xx_hwi.c:3037:63: sparse: got restricted __le64 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:3828:35: sparse: sparse: restricted __le32 degrades to
integer
> drivers/scsi/pm8001/pm80xx_hwi.c:3849:46: sparse: sparse: cast to
restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:3851:41: sparse: sparse: cast
to restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:3852:43: sparse: sparse: cast to restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:3853:43: sparse: sparse: cast to restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:3854:47: sparse: sparse: cast to restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:3855:44: sparse: sparse: cast to restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:3861:25: sparse: sparse: cast to restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:3863:25: sparse: sparse: cast to restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:3865:25: sparse: sparse: cast to restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:3867:25: sparse: sparse: cast to restricted __le32
drivers/scsi/pm8001/pm80xx_hwi.c:4359:46: sparse: sparse: incorrect type in argument 1
(different base types) @@ expected unsigned long long [usertype] address @@ got
restricted __le64 [assigned] [usertype] tmp_addr @@
drivers/scsi/pm8001/pm80xx_hwi.c:4359:46: sparse: expected unsigned long long
[usertype] address
drivers/scsi/pm8001/pm80xx_hwi.c:4359:46: sparse: got restricted __le64 [assigned]
[usertype] tmp_addr
drivers/scsi/pm8001/pm80xx_hwi.c:4534:36: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned long long [usertype] start_addr @@ got
restricted __le64 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4534:36: sparse: expected unsigned long long
[usertype] start_addr
drivers/scsi/pm8001/pm80xx_hwi.c:4534:36: sparse: got restricted __le64 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4535:57: sparse: sparse: restricted __le32 degrades to
integer
drivers/scsi/pm8001/pm80xx_hwi.c:4536:38: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int [usertype] end_addr_low @@ got
restricted __le32 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4536:38: sparse: expected unsigned int [usertype]
end_addr_low
drivers/scsi/pm8001/pm80xx_hwi.c:4536:38: sparse: got restricted __le32 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4537:39: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int [usertype] end_addr_high @@ got
restricted __le32 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4537:39: sparse: expected unsigned int [usertype]
end_addr_high
drivers/scsi/pm8001/pm80xx_hwi.c:4537:39: sparse: got restricted __le32 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4538:53: sparse: sparse: restricted __le32 degrades to
integer
drivers/scsi/pm8001/pm80xx_hwi.c:4564:35: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] key_cmode @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:4564:35: sparse: expected restricted __le32
[addressable] [assigned] [usertype] key_cmode
drivers/scsi/pm8001/pm80xx_hwi.c:4564:35: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:4593:36: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned long long [usertype] start_addr @@ got
restricted __le64 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4593:36: sparse: expected unsigned long long
[usertype] start_addr
drivers/scsi/pm8001/pm80xx_hwi.c:4593:36: sparse: got restricted __le64 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4594:57: sparse: sparse: restricted __le32 degrades to
integer
drivers/scsi/pm8001/pm80xx_hwi.c:4595:38: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int [usertype] end_addr_low @@ got
restricted __le32 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4595:38: sparse: expected unsigned int [usertype]
end_addr_low
drivers/scsi/pm8001/pm80xx_hwi.c:4595:38: sparse: got restricted __le32 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4596:39: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int [usertype] end_addr_high @@ got
restricted __le32 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4596:39: sparse: expected unsigned int [usertype]
end_addr_high
drivers/scsi/pm8001/pm80xx_hwi.c:4596:39: sparse: got restricted __le32 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4597:53: sparse: sparse: restricted __le32 degrades to
integer
drivers/scsi/pm8001/pm80xx_hwi.c:4701:47: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] enc_addr_low @@ got unsigned int [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4701:47: sparse: expected restricted __le32
[addressable] [assigned] [usertype] enc_addr_low
drivers/scsi/pm8001/pm80xx_hwi.c:4701:47: sparse: got unsigned int [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4702:48: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] enc_addr_high @@ got unsigned int [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4702:48: sparse: expected restricted __le32
[addressable] [assigned] [usertype] enc_addr_high
drivers/scsi/pm8001/pm80xx_hwi.c:4702:48: sparse: got unsigned int [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4706:47: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] enc_addr_low @@ got unsigned int [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4706:47: sparse: expected restricted __le32
[addressable] [assigned] [usertype] enc_addr_low
drivers/scsi/pm8001/pm80xx_hwi.c:4706:47: sparse: got unsigned int [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4707:48: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] enc_addr_high @@ got unsigned int [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4707:48: sparse: expected restricted __le32
[addressable] [assigned] [usertype] enc_addr_high
drivers/scsi/pm8001/pm80xx_hwi.c:4707:48: sparse: got unsigned int [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4711:36: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned long long [usertype] start_addr @@ got
restricted __le64 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4711:36: sparse: expected unsigned long long
[usertype] start_addr
drivers/scsi/pm8001/pm80xx_hwi.c:4711:36: sparse: got restricted __le64 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4712:58: sparse: sparse: restricted __le32 degrades to
integer
drivers/scsi/pm8001/pm80xx_hwi.c:4713:38: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int [usertype] end_addr_low @@ got
restricted __le32 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4713:38: sparse: expected unsigned int [usertype]
end_addr_low
drivers/scsi/pm8001/pm80xx_hwi.c:4713:38: sparse: got restricted __le32 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4714:39: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int [usertype] end_addr_high @@ got
restricted __le32 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4714:39: sparse: expected unsigned int [usertype]
end_addr_high
drivers/scsi/pm8001/pm80xx_hwi.c:4714:39: sparse: got restricted __le32 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4715:54: sparse: sparse: restricted __le32 degrades to
integer
drivers/scsi/pm8001/pm80xx_hwi.c:4728:55: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] enc_addr_low @@ got unsigned int [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4728:55: sparse: expected restricted __le32
[addressable] [assigned] [usertype] enc_addr_low
drivers/scsi/pm8001/pm80xx_hwi.c:4728:55: sparse: got unsigned int [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4730:56: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] enc_addr_high @@ got unsigned int [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4730:56: sparse: expected restricted __le32
[addressable] [assigned] [usertype] enc_addr_high
drivers/scsi/pm8001/pm80xx_hwi.c:4730:56: sparse: got unsigned int [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4742:41: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] key_index_mode @@ got int @@
drivers/scsi/pm8001/pm80xx_hwi.c:4742:41: sparse: expected restricted __le32
[addressable] [assigned] [usertype] key_index_mode
drivers/scsi/pm8001/pm80xx_hwi.c:4742:41: sparse: got int
drivers/scsi/pm8001/pm80xx_hwi.c:4777:36: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned long long [usertype] start_addr @@ got
restricted __le64 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4777:36: sparse: expected unsigned long long
[usertype] start_addr
drivers/scsi/pm8001/pm80xx_hwi.c:4777:36: sparse: got restricted __le64 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4778:58: sparse: sparse: restricted __le32 degrades to
integer
drivers/scsi/pm8001/pm80xx_hwi.c:4779:38: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int [usertype] end_addr_low @@ got
restricted __le32 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4779:38: sparse: expected unsigned int [usertype]
end_addr_low
drivers/scsi/pm8001/pm80xx_hwi.c:4779:38: sparse: got restricted __le32 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:4780:39: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int [usertype] end_addr_high @@ got
restricted __le32 [usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:4780:39: sparse: expected unsigned int [usertype]
end_addr_high
drivers/scsi/pm8001/pm80xx_hwi.c:4780:39: sparse: got restricted __le32 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:5109:27: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] ppc_phyid @@ got unsigned int @@
drivers/scsi/pm8001/pm80xx_hwi.c:5109:27: sparse: expected restricted __le32
[addressable] [assigned] [usertype] ppc_phyid
drivers/scsi/pm8001/pm80xx_hwi.c:5109:27: sparse: got unsigned int
drivers/scsi/pm8001/pm80xx_hwi.c:5114:37: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int @@ got restricted __le32
[usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:5114:37: sparse: expected unsigned int
drivers/scsi/pm8001/pm80xx_hwi.c:5114:37: sparse: got restricted __le32 [usertype]
drivers/scsi/pm8001/pm80xx_hwi.c:5094:6: sparse: sparse: symbol
'mpi_set_phy_profile_req' was not declared. Should it be static?
drivers/scsi/pm8001/pm80xx_hwi.c:5154:27: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __le32 [addressable] [assigned]
[usertype] ppc_phyid @@ got unsigned int @@
drivers/scsi/pm8001/pm80xx_hwi.c:5154:27: sparse: expected restricted __le32
[addressable] [assigned] [usertype] ppc_phyid
drivers/scsi/pm8001/pm80xx_hwi.c:5154:27: sparse: got unsigned int
drivers/scsi/pm8001/pm80xx_hwi.c:5158:37: sparse: sparse: incorrect type in assignment
(different base types) @@ expected unsigned int @@ got restricted __le32
[usertype] @@
drivers/scsi/pm8001/pm80xx_hwi.c:5158:37: sparse: expected unsigned int
drivers/scsi/pm8001/pm80xx_hwi.c:5158:37: sparse: got restricted __le32 [usertype]
vim +3849 drivers/scsi/pm8001/pm80xx_hwi.c
3811
3812 /**
3813 * mpi_get_phy_profile_resp - SPCv specific
3814 * @pm8001_ha: our hba card information
3815 * @piomb: IO message buffer
3816 */
3817 static int mpi_get_phy_profile_resp(struct pm8001_hba_info *pm8001_ha,
3818 void *piomb)
3819 {
3820 u32 tag, page_code;
3821 struct phy_status *phy_status, *phy_stat;
3822 struct phy_errcnt *phy_err, *phy_err_cnt;
3823 struct pm8001_ccb_info *ccb;
3824 struct get_phy_profile_resp *pPayload =
3825 (struct get_phy_profile_resp *)(piomb + 4);
3826 u32 status = le32_to_cpu(pPayload->status);
3827
3828 page_code = (u8)((pPayload->ppc_phyid & 0xFF00) >> 8);
3829
3830 PM8001_MSG_DBG(pm8001_ha,
3831 pm8001_printk(" pm80xx_addition_functionality\n"));
3832 if (status) {
3833 /* status is FAILED */
3834 PM8001_FAIL_DBG(pm8001_ha, pm8001_printk(
3835 "mpiGetPhyProfileReq failed with status 0x%08x\n",
3836 status));
3837 }
3838
3839 tag = le32_to_cpu(pPayload->tag);
3840 ccb = &pm8001_ha->ccb_info[tag];
3841 if (ccb->completion != NULL) {
3842 if (status) {
3843 /* signal fail status */
3844 memset(&ccb->resp_buf, 0xff, sizeof(ccb->resp_buf));
3845 } else if (page_code == SAS_PHY_GENERAL_STATUS_PAGE) {
3846 phy_status = (struct phy_status *)ccb->resp_buf;
3847 phy_stat =
3848 (struct phy_status *)pPayload->ppc_specific_rsp;
3849 phy_status->phy_id = le32_to_cpu(phy_stat->phy_id);
3850 phy_status->phy_state =
3851 le32_to_cpu(phy_stat->phy_state);
3852 phy_status->plr = le32_to_cpu(phy_stat->plr);
3853 phy_status->nlr = le32_to_cpu(phy_stat->nlr);
3854 phy_status->port_id = le32_to_cpu(phy_stat->port_id);
3855 phy_status->prts = le32_to_cpu(phy_stat->prts);
3856 } else if (page_code == SAS_PHY_ERR_COUNTERS_PAGE) {
3857 phy_err = (struct phy_errcnt *)ccb->resp_buf;
3858 phy_err_cnt =
3859 (struct phy_errcnt *)pPayload->ppc_specific_rsp;
3860 phy_err->InvalidDword =
3861 le32_to_cpu(phy_err_cnt->InvalidDword);
3862 phy_err->runningDisparityError =
3863 le32_to_cpu(phy_err_cnt->runningDisparityError);
3864 phy_err->LossOfSyncDW =
3865 le32_to_cpu(phy_err_cnt->LossOfSyncDW);
3866 phy_err->phyResetProblem =
3867 le32_to_cpu(phy_err_cnt->phyResetProblem);
3868 }
3869 complete(ccb->completion);
3870 }
3871 pm8001_tag_free(pm8001_ha, tag);
3872 return 0;
3873 }
3874
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org