msf2: Remove dead code reported by Coverity
Fixed incorrect frame size mask, validated maximum frame size in spi_write and removed dead code. Signed-off-by: Subbaraya Sundeep <sundeep.lkml@gmail.com> Reviewed-by: Darren Kenny <darren.kenny@oracle.com> Reviewed-by: Alistair Francis <alistair.francis@xilinx.com> Message-id: 1508898544-10307-1-git-send-email-sundeep.lkml@gmail.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
0f2bf05ce7
commit
cda607d5e0
|
@ -76,9 +76,10 @@
|
||||||
#define C_BIGFIFO (1 << 29)
|
#define C_BIGFIFO (1 << 29)
|
||||||
#define C_RESET (1 << 31)
|
#define C_RESET (1 << 31)
|
||||||
|
|
||||||
#define FRAMESZ_MASK 0x1F
|
#define FRAMESZ_MASK 0x3F
|
||||||
#define FMCOUNT_MASK 0x00FFFF00
|
#define FMCOUNT_MASK 0x00FFFF00
|
||||||
#define FMCOUNT_SHIFT 8
|
#define FMCOUNT_SHIFT 8
|
||||||
|
#define FRAMESZ_MAX 32
|
||||||
|
|
||||||
static void txfifo_reset(MSSSpiState *s)
|
static void txfifo_reset(MSSSpiState *s)
|
||||||
{
|
{
|
||||||
|
@ -104,10 +105,8 @@ static void set_fifodepth(MSSSpiState *s)
|
||||||
s->fifo_depth = 32;
|
s->fifo_depth = 32;
|
||||||
} else if (size <= 16) {
|
} else if (size <= 16) {
|
||||||
s->fifo_depth = 16;
|
s->fifo_depth = 16;
|
||||||
} else if (size <= 32) {
|
|
||||||
s->fifo_depth = 8;
|
|
||||||
} else {
|
} else {
|
||||||
s->fifo_depth = 4;
|
s->fifo_depth = 8;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -301,6 +300,17 @@ static void spi_write(void *opaque, hwaddr addr,
|
||||||
if (s->enabled) {
|
if (s->enabled) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
|
* [31:6] bits are reserved bits and for future use.
|
||||||
|
* [5:0] are for frame size. Only [5:0] bits are validated
|
||||||
|
* during write, [31:6] bits are untouched.
|
||||||
|
*/
|
||||||
|
if ((value & FRAMESZ_MASK) > FRAMESZ_MAX) {
|
||||||
|
qemu_log_mask(LOG_GUEST_ERROR, "%s: Incorrect size %u provided."
|
||||||
|
"Maximum frame size is %u\n",
|
||||||
|
__func__, value & FRAMESZ_MASK, FRAMESZ_MAX);
|
||||||
|
break;
|
||||||
|
}
|
||||||
s->regs[R_SPI_DFSIZE] = value;
|
s->regs[R_SPI_DFSIZE] = value;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue