Re: [PATCH v2 09/13] dma/xlnx-zdma: Remove redundant statement in zdma_write_dst()
On Wed, Feb 26, 2020 at 12:52 AM wrote: > > From: Chen Qun > > Clang static code analyzer show warning: > hw/dma/xlnx-zdma.c:399:13: warning: Value stored to 'dst_type' is never read > dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3, > ^ ~~~ > > Reported-by: Euler Robot > Signed-off-by: Chen Qun > --- > Cc: Alistair Francis > Cc: "Edgar E. Iglesias" > Cc: Peter Maydell > Cc: Philippe Mathieu-Daudé Reviewed-by: Alistair Francis Alistair > > v1->v2: move the 'dst_type' declaration.(Base on Philippe's suggestion). > --- > hw/dma/xlnx-zdma.c | 10 +- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/hw/dma/xlnx-zdma.c b/hw/dma/xlnx-zdma.c > index 8fb83f5b07..eeacad59ce 100644 > --- a/hw/dma/xlnx-zdma.c > +++ b/hw/dma/xlnx-zdma.c > @@ -373,7 +373,7 @@ static uint64_t zdma_update_descr_addr(XlnxZDMA *s, bool > type, > static void zdma_write_dst(XlnxZDMA *s, uint8_t *buf, uint32_t len) > { > uint32_t dst_size, dlen; > -bool dst_intr, dst_type; > +bool dst_intr; > unsigned int ptype = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_CTRL0, > POINT_TYPE); > unsigned int rw_mode = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_CTRL0, MODE); > unsigned int burst_type = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_DATA_ATTR, > @@ -387,17 +387,17 @@ static void zdma_write_dst(XlnxZDMA *s, uint8_t *buf, > uint32_t len) > while (len) { > dst_size = FIELD_EX32(s->dsc_dst.words[2], ZDMA_CH_DST_DSCR_WORD2, >SIZE); > -dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3, > - TYPE); > if (dst_size == 0 && ptype == PT_MEM) { > uint64_t next; > +bool dst_type = FIELD_EX32(s->dsc_dst.words[3], > + ZDMA_CH_DST_DSCR_WORD3, > + TYPE); > + > next = zdma_update_descr_addr(s, dst_type, >R_ZDMA_CH_DST_CUR_DSCR_LSB); > zdma_load_descriptor(s, next, &s->dsc_dst); > dst_size = FIELD_EX32(s->dsc_dst.words[2], > ZDMA_CH_DST_DSCR_WORD2, >SIZE); > -dst_type = FIELD_EX32(s->dsc_dst.words[3], > ZDMA_CH_DST_DSCR_WORD3, > - TYPE); > } > > /* Match what hardware does by ignoring the dst_size and only using > -- > 2.23.0 > > >
Re: [PATCH v2 09/13] dma/xlnx-zdma: Remove redundant statement in zdma_write_dst()
On [2020 Feb 26] Wed 16:46:43, kuhn.chen...@huawei.com wrote: > From: Chen Qun > > Clang static code analyzer show warning: > hw/dma/xlnx-zdma.c:399:13: warning: Value stored to 'dst_type' is never read > dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3, > ^ ~~~ > > Reported-by: Euler Robot > Signed-off-by: Chen Qun Reviewed-by: Francisco Iglesias > --- > Cc: Alistair Francis > Cc: "Edgar E. Iglesias" > Cc: Peter Maydell > Cc: Philippe Mathieu-Daudé > > v1->v2: move the 'dst_type' declaration.(Base on Philippe's suggestion). > --- > hw/dma/xlnx-zdma.c | 10 +- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/hw/dma/xlnx-zdma.c b/hw/dma/xlnx-zdma.c > index 8fb83f5b07..eeacad59ce 100644 > --- a/hw/dma/xlnx-zdma.c > +++ b/hw/dma/xlnx-zdma.c > @@ -373,7 +373,7 @@ static uint64_t zdma_update_descr_addr(XlnxZDMA *s, bool > type, > static void zdma_write_dst(XlnxZDMA *s, uint8_t *buf, uint32_t len) > { > uint32_t dst_size, dlen; > -bool dst_intr, dst_type; > +bool dst_intr; > unsigned int ptype = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_CTRL0, > POINT_TYPE); > unsigned int rw_mode = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_CTRL0, MODE); > unsigned int burst_type = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_DATA_ATTR, > @@ -387,17 +387,17 @@ static void zdma_write_dst(XlnxZDMA *s, uint8_t *buf, > uint32_t len) > while (len) { > dst_size = FIELD_EX32(s->dsc_dst.words[2], ZDMA_CH_DST_DSCR_WORD2, >SIZE); > -dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3, > - TYPE); > if (dst_size == 0 && ptype == PT_MEM) { > uint64_t next; > +bool dst_type = FIELD_EX32(s->dsc_dst.words[3], > + ZDMA_CH_DST_DSCR_WORD3, > + TYPE); > + > next = zdma_update_descr_addr(s, dst_type, >R_ZDMA_CH_DST_CUR_DSCR_LSB); > zdma_load_descriptor(s, next, &s->dsc_dst); > dst_size = FIELD_EX32(s->dsc_dst.words[2], > ZDMA_CH_DST_DSCR_WORD2, >SIZE); > -dst_type = FIELD_EX32(s->dsc_dst.words[3], > ZDMA_CH_DST_DSCR_WORD3, > - TYPE); > } > > /* Match what hardware does by ignoring the dst_size and only using > -- > 2.23.0 > > >
Re: [PATCH v2 09/13] dma/xlnx-zdma: Remove redundant statement in zdma_write_dst()
On 2/26/20 9:46 AM, kuhn.chen...@huawei.com wrote: From: Chen Qun Clang static code analyzer show warning: hw/dma/xlnx-zdma.c:399:13: warning: Value stored to 'dst_type' is never read dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3, ^ ~~~ Reported-by: Euler Robot Signed-off-by: Chen Qun --- Cc: Alistair Francis Cc: "Edgar E. Iglesias" Cc: Peter Maydell Cc: Philippe Mathieu-Daudé v1->v2: move the 'dst_type' declaration.(Base on Philippe's suggestion). --- hw/dma/xlnx-zdma.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/hw/dma/xlnx-zdma.c b/hw/dma/xlnx-zdma.c index 8fb83f5b07..eeacad59ce 100644 --- a/hw/dma/xlnx-zdma.c +++ b/hw/dma/xlnx-zdma.c @@ -373,7 +373,7 @@ static uint64_t zdma_update_descr_addr(XlnxZDMA *s, bool type, static void zdma_write_dst(XlnxZDMA *s, uint8_t *buf, uint32_t len) { uint32_t dst_size, dlen; -bool dst_intr, dst_type; +bool dst_intr; unsigned int ptype = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_CTRL0, POINT_TYPE); unsigned int rw_mode = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_CTRL0, MODE); unsigned int burst_type = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_DATA_ATTR, @@ -387,17 +387,17 @@ static void zdma_write_dst(XlnxZDMA *s, uint8_t *buf, uint32_t len) while (len) { dst_size = FIELD_EX32(s->dsc_dst.words[2], ZDMA_CH_DST_DSCR_WORD2, SIZE); -dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3, - TYPE); if (dst_size == 0 && ptype == PT_MEM) { uint64_t next; +bool dst_type = FIELD_EX32(s->dsc_dst.words[3], + ZDMA_CH_DST_DSCR_WORD3, + TYPE); + next = zdma_update_descr_addr(s, dst_type, R_ZDMA_CH_DST_CUR_DSCR_LSB); zdma_load_descriptor(s, next, &s->dsc_dst); dst_size = FIELD_EX32(s->dsc_dst.words[2], ZDMA_CH_DST_DSCR_WORD2, SIZE); -dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3, - TYPE); } /* Match what hardware does by ignoring the dst_size and only using Reviewed-by: Philippe Mathieu-Daudé
[PATCH v2 09/13] dma/xlnx-zdma: Remove redundant statement in zdma_write_dst()
From: Chen Qun Clang static code analyzer show warning: hw/dma/xlnx-zdma.c:399:13: warning: Value stored to 'dst_type' is never read dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3, ^ ~~~ Reported-by: Euler Robot Signed-off-by: Chen Qun --- Cc: Alistair Francis Cc: "Edgar E. Iglesias" Cc: Peter Maydell Cc: Philippe Mathieu-Daudé v1->v2: move the 'dst_type' declaration.(Base on Philippe's suggestion). --- hw/dma/xlnx-zdma.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/hw/dma/xlnx-zdma.c b/hw/dma/xlnx-zdma.c index 8fb83f5b07..eeacad59ce 100644 --- a/hw/dma/xlnx-zdma.c +++ b/hw/dma/xlnx-zdma.c @@ -373,7 +373,7 @@ static uint64_t zdma_update_descr_addr(XlnxZDMA *s, bool type, static void zdma_write_dst(XlnxZDMA *s, uint8_t *buf, uint32_t len) { uint32_t dst_size, dlen; -bool dst_intr, dst_type; +bool dst_intr; unsigned int ptype = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_CTRL0, POINT_TYPE); unsigned int rw_mode = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_CTRL0, MODE); unsigned int burst_type = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_DATA_ATTR, @@ -387,17 +387,17 @@ static void zdma_write_dst(XlnxZDMA *s, uint8_t *buf, uint32_t len) while (len) { dst_size = FIELD_EX32(s->dsc_dst.words[2], ZDMA_CH_DST_DSCR_WORD2, SIZE); -dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3, - TYPE); if (dst_size == 0 && ptype == PT_MEM) { uint64_t next; +bool dst_type = FIELD_EX32(s->dsc_dst.words[3], + ZDMA_CH_DST_DSCR_WORD3, + TYPE); + next = zdma_update_descr_addr(s, dst_type, R_ZDMA_CH_DST_CUR_DSCR_LSB); zdma_load_descriptor(s, next, &s->dsc_dst); dst_size = FIELD_EX32(s->dsc_dst.words[2], ZDMA_CH_DST_DSCR_WORD2, SIZE); -dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3, - TYPE); } /* Match what hardware does by ignoring the dst_size and only using -- 2.23.0