[staging:staging-testing 62/88] drivers/staging/emxx_udc/emxx_udc.c:839:9: warning: Variable 'result' is reassigned a value before the old one has been used.
kernel test robot
lkp at intel.com
Wed Sep 2 03:15:47 UTC 2020
tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git staging-testing
head: 4c6491a343e91a5a2a699b0b545f8ba1ec1e8c65
commit: fbcfdfab4a2c4ec5e2195929528506fec39388f3 [62/88] staging: emxx_udc: Allow for building on !ARM
compiler: riscv32-linux-gcc (GCC) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp at intel.com>
cppcheck warnings: (new ones prefixed by >>)
>> drivers/staging/emxx_udc/emxx_udc.c:839:9: warning: Variable 'result' is reassigned a value before the old one has been used. [redundantAssignment]
result = length & ~(u32)0x03;
^
drivers/staging/emxx_udc/emxx_udc.c:796:0: note: Variable 'result' is reassigned a value before the old one has been used.
int result = -EINVAL;
^
drivers/staging/emxx_udc/emxx_udc.c:839:9: note: Variable 'result' is reassigned a value before the old one has been used.
result = length & ~(u32)0x03;
^
drivers/staging/emxx_udc/emxx_udc.c:1045:9: warning: Variable 'result' is reassigned a value before the old one has been used. [redundantAssignment]
result = i_write_length & ~(u32)0x3;
^
drivers/staging/emxx_udc/emxx_udc.c:990:0: note: Variable 'result' is reassigned a value before the old one has been used.
int result = -EINVAL;
^
drivers/staging/emxx_udc/emxx_udc.c:1045:9: note: Variable 'result' is reassigned a value before the old one has been used.
result = i_write_length & ~(u32)0x3;
^
>> drivers/staging/emxx_udc/emxx_udc.c:1307:16: warning: Variable 'ep->stalled' is reassigned a value before the old one has been used. [redundantAssignment]
ep->stalled = false;
^
drivers/staging/emxx_udc/emxx_udc.c:1292:16: note: Variable 'ep->stalled' is reassigned a value before the old one has been used.
ep->stalled = false;
^
drivers/staging/emxx_udc/emxx_udc.c:1307:16: note: Variable 'ep->stalled' is reassigned a value before the old one has been used.
ep->stalled = false;
^
>> drivers/staging/emxx_udc/emxx_udc.c:3094:9: warning: Variable 'status' is reassigned a value before the old one has been used. [redundantAssignment]
status = devm_request_irq(&pdev->dev, irq, _nbu2ss_udc_irq,
^
drivers/staging/emxx_udc/emxx_udc.c:3076:0: note: Variable 'status' is reassigned a value before the old one has been used.
int status = -ENODEV;
^
drivers/staging/emxx_udc/emxx_udc.c:3094:9: note: Variable 'status' is reassigned a value before the old one has been used.
status = devm_request_irq(&pdev->dev, irq, _nbu2ss_udc_irq,
^
>> drivers/staging/emxx_udc/emxx_udc.c:2095:48: warning: Uninitialized variable: ep [uninitvar]
list_for_each_entry(ep, &udc->gadget.ep_list, ep.ep_list) {
^
# https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git/commit/?id=fbcfdfab4a2c4ec5e2195929528506fec39388f3
git remote add staging https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
git fetch --no-tags staging staging-testing
git checkout fbcfdfab4a2c4ec5e2195929528506fec39388f3
vim +/result +839 drivers/staging/emxx_udc/emxx_udc.c
33aa8d45a4fea3 Magnus Damm 2014-06-06 785
33aa8d45a4fea3 Magnus Damm 2014-06-06 786 /*-------------------------------------------------------------------------*/
e2d34dfdffcfd1 Cristian Sicilia 2018-11-17 787 static int _nbu2ss_out_dma(struct nbu2ss_udc *udc, struct nbu2ss_req *req,
e2d34dfdffcfd1 Cristian Sicilia 2018-11-17 788 u32 num, u32 length)
33aa8d45a4fea3 Magnus Damm 2014-06-06 789 {
5a012f67cbcb20 Alexis Lothoré 2017-05-10 790 dma_addr_t p_buffer;
33aa8d45a4fea3 Magnus Damm 2014-06-06 791 u32 mpkt;
33aa8d45a4fea3 Magnus Damm 2014-06-06 792 u32 lmpkt;
33aa8d45a4fea3 Magnus Damm 2014-06-06 793 u32 dmacnt;
33aa8d45a4fea3 Magnus Damm 2014-06-06 794 u32 burst = 1;
33aa8d45a4fea3 Magnus Damm 2014-06-06 795 u32 data;
33aa8d45a4fea3 Magnus Damm 2014-06-06 796 int result = -EINVAL;
64407f6e7d158e Carmeli Tamir 2018-11-07 797 struct fc_regs __iomem *preg = udc->p_regs;
33aa8d45a4fea3 Magnus Damm 2014-06-06 798
33aa8d45a4fea3 Magnus Damm 2014-06-06 799 if (req->dma_flag)
33aa8d45a4fea3 Magnus Damm 2014-06-06 800 return 1; /* DMA is forwarded */
33aa8d45a4fea3 Magnus Damm 2014-06-06 801
8b77d94e69c33f Saiyam Doshi 2019-09-08 802 req->dma_flag = true;
5a012f67cbcb20 Alexis Lothoré 2017-05-10 803 p_buffer = req->req.dma;
5a012f67cbcb20 Alexis Lothoré 2017-05-10 804 p_buffer += req->req.actual;
33aa8d45a4fea3 Magnus Damm 2014-06-06 805
33aa8d45a4fea3 Magnus Damm 2014-06-06 806 /* DMA Address */
5a012f67cbcb20 Alexis Lothoré 2017-05-10 807 _nbu2ss_writel(&preg->EP_DCR[num].EP_TADR, (u32)p_buffer);
33aa8d45a4fea3 Magnus Damm 2014-06-06 808
33aa8d45a4fea3 Magnus Damm 2014-06-06 809 /* Number of transfer packets */
75d9c393763da3 Alexis Lothoré 2017-05-10 810 mpkt = _nbu2ss_readl(&preg->EP_REGS[num].EP_PCKT_ADRS) & EPN_MPKT;
599b87809594e2 Janani Ravichandran 2016-02-11 811 dmacnt = length / mpkt;
33aa8d45a4fea3 Magnus Damm 2014-06-06 812 lmpkt = (length % mpkt) & ~(u32)0x03;
33aa8d45a4fea3 Magnus Damm 2014-06-06 813
2866914ce1f84f Cristina Moraru 2015-09-29 814 if (dmacnt > DMA_MAX_COUNT) {
33aa8d45a4fea3 Magnus Damm 2014-06-06 815 dmacnt = DMA_MAX_COUNT;
33aa8d45a4fea3 Magnus Damm 2014-06-06 816 lmpkt = 0;
2866914ce1f84f Cristina Moraru 2015-09-29 817 } else if (lmpkt != 0) {
2866914ce1f84f Cristina Moraru 2015-09-29 818 if (dmacnt == 0)
33aa8d45a4fea3 Magnus Damm 2014-06-06 819 burst = 0; /* Burst OFF */
33aa8d45a4fea3 Magnus Damm 2014-06-06 820 dmacnt++;
33aa8d45a4fea3 Magnus Damm 2014-06-06 821 }
33aa8d45a4fea3 Magnus Damm 2014-06-06 822
33aa8d45a4fea3 Magnus Damm 2014-06-06 823 data = mpkt | (lmpkt << 16);
33aa8d45a4fea3 Magnus Damm 2014-06-06 824 _nbu2ss_writel(&preg->EP_DCR[num].EP_DCR2, data);
33aa8d45a4fea3 Magnus Damm 2014-06-06 825
75d9c393763da3 Alexis Lothoré 2017-05-10 826 data = ((dmacnt & 0xff) << 16) | DCR1_EPN_DIR0 | DCR1_EPN_REQEN;
33aa8d45a4fea3 Magnus Damm 2014-06-06 827 _nbu2ss_writel(&preg->EP_DCR[num].EP_DCR1, data);
33aa8d45a4fea3 Magnus Damm 2014-06-06 828
2866914ce1f84f Cristina Moraru 2015-09-29 829 if (burst == 0) {
33aa8d45a4fea3 Magnus Damm 2014-06-06 830 _nbu2ss_writel(&preg->EP_REGS[num].EP_LEN_DCNT, 0);
75d9c393763da3 Alexis Lothoré 2017-05-10 831 _nbu2ss_bitclr(&preg->EP_REGS[num].EP_DMA_CTRL, EPN_BURST_SET);
33aa8d45a4fea3 Magnus Damm 2014-06-06 832 } else {
33aa8d45a4fea3 Magnus Damm 2014-06-06 833 _nbu2ss_writel(&preg->EP_REGS[num].EP_LEN_DCNT
33aa8d45a4fea3 Magnus Damm 2014-06-06 834 , (dmacnt << 16));
75d9c393763da3 Alexis Lothoré 2017-05-10 835 _nbu2ss_bitset(&preg->EP_REGS[num].EP_DMA_CTRL, EPN_BURST_SET);
33aa8d45a4fea3 Magnus Damm 2014-06-06 836 }
75d9c393763da3 Alexis Lothoré 2017-05-10 837 _nbu2ss_bitset(&preg->EP_REGS[num].EP_DMA_CTRL, EPN_DMA_EN);
33aa8d45a4fea3 Magnus Damm 2014-06-06 838
33aa8d45a4fea3 Magnus Damm 2014-06-06 @839 result = length & ~(u32)0x03;
33aa8d45a4fea3 Magnus Damm 2014-06-06 840 req->div_len = result;
33aa8d45a4fea3 Magnus Damm 2014-06-06 841
33aa8d45a4fea3 Magnus Damm 2014-06-06 842 return result;
33aa8d45a4fea3 Magnus Damm 2014-06-06 843 }
33aa8d45a4fea3 Magnus Damm 2014-06-06 844
:::::: The code at line 839 was first introduced by commit
:::::: 33aa8d45a4fea3dc5d90338aad0867a66e0c38d5 staging: emxx_udc: Add Emma Mobile USB Gadget driver
:::::: TO: Magnus Damm <damm+renesas at opensource.se>
:::::: CC: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
More information about the devel
mailing list