From patchwork Tue Oct 31 13:11:27 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 117621 Delivered-To: patch@linaro.org Received: by 10.140.22.164 with SMTP id 33csp3897546qgn; Tue, 31 Oct 2017 06:11:40 -0700 (PDT) X-Google-Smtp-Source: ABhQp+ScAb8CxhDbzcQRr3hOGpOGN8gvjZD7Va0cj7yZU3AeWTdKaa4WkFlaN+K2tpiCC6BZrfrK X-Received: by 10.37.176.165 with SMTP id f37mr1224156ybj.80.1509455500128; Tue, 31 Oct 2017 06:11:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1509455500; cv=none; d=google.com; s=arc-20160816; b=LkzX8DpML1oiEF8hB7hhTfMOBYc052LItPHz6BwvHIOifqQLmvNHzPZKvREAB0vYC8 pYIVGCCkWxEq7tI3RaSscUMBRK3IafdxPElaEMJ85ZcP1DSgp9GILQ0voksy7mLtdoef AhEh5+l/PHYiSdnxat2wnyeihPCFDAI7ZwxlnZMq2xNnJTeqLUHZMdX1Zuqgut3RQeGz Ni7onB0KV6gmcNt4/CCPR5PNNtAG4GiyHp14Mzayyt+zeft51our3MZ1iPMHnCQFSFaQ z/+VwOg2d2VF+e0GFG8qjmJMi/MT92HbE+VcLDyixl66+5o2RxdbJxAWf6qHXz9gE1U3 ye3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:to:from:arc-authentication-results; bh=QklVf+ixk0NQFljxo0XfQeNsFNYfdaMs4nNooWSziP0=; b=fIVZR+WFhcm2uPhd22+OHGFjKfFC3kVLHf+V0AVBffQhRJ2KGQ5uR3TjPHDB5YYXCN j7t4Yb6TcdLspiRqxczLauBwtuSJgCY8/LR0Jmf/JL5HDJOSN7tznptmCxz1Zh8+oDMb aBJRGLNaGrOlMYcFIO9/ZA+9TTvq1WJ1zBYYkL68JA7A747cqT+9bAPOKRTegfmpO2N8 e9kxiMwkWl8oVgfAOpSC625cICEFRqgVHGb96uxqKPcFFI9t2v2xDIJJzx2GWKciCY9e rySfgYwOPW4MPv9atnqnI4XNBbfOF/Vk028yl3/qU+BCRUIFDxI9i8xpJSq0ptN5vQio 3CvQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom=qemu-devel-bounces+patch=linaro.org@nongnu.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id q9si402452ybd.395.2017.10.31.06.11.40 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 31 Oct 2017 06:11:40 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom=qemu-devel-bounces+patch=linaro.org@nongnu.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:45628 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e9WKR-0001ph-KR for patch@linaro.org; Tue, 31 Oct 2017 09:11:39 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58811) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e9WK4-0001nz-5q for qemu-devel@nongnu.org; Tue, 31 Oct 2017 09:11:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1e9WK3-0006we-0R for qemu-devel@nongnu.org; Tue, 31 Oct 2017 09:11:16 -0400 Received: from orth.archaic.org.uk ([2001:8b0:1d0::2]:38084) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1e9WK2-0006em-PF for qemu-devel@nongnu.org; Tue, 31 Oct 2017 09:11:14 -0400 Received: from pm215 by orth.archaic.org.uk with local (Exim 4.89) (envelope-from ) id 1e9WJt-0007Hr-8X for qemu-devel@nongnu.org; Tue, 31 Oct 2017 13:11:05 +0000 From: Peter Maydell To: qemu-devel@nongnu.org Date: Tue, 31 Oct 2017 13:11:27 +0000 Message-Id: <1509455489-14101-4-git-send-email-peter.maydell@linaro.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1509455489-14101-1-git-send-email-peter.maydell@linaro.org> References: <1509455489-14101-1-git-send-email-peter.maydell@linaro.org> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2001:8b0:1d0::2 Subject: [Qemu-devel] [PULL 3/5] msf2: Remove dead code reported by Coverity X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" From: Subbaraya Sundeep Fixed incorrect frame size mask, validated maximum frame size in spi_write and removed dead code. Signed-off-by: Subbaraya Sundeep Reviewed-by: Darren Kenny Reviewed-by: Alistair Francis Message-id: 1508898544-10307-1-git-send-email-sundeep.lkml@gmail.com Signed-off-by: Peter Maydell --- hw/ssi/mss-spi.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) -- 2.7.4 diff --git a/hw/ssi/mss-spi.c b/hw/ssi/mss-spi.c index 5a8e308..d60daba 100644 --- a/hw/ssi/mss-spi.c +++ b/hw/ssi/mss-spi.c @@ -76,9 +76,10 @@ #define C_BIGFIFO (1 << 29) #define C_RESET (1 << 31) -#define FRAMESZ_MASK 0x1F +#define FRAMESZ_MASK 0x3F #define FMCOUNT_MASK 0x00FFFF00 #define FMCOUNT_SHIFT 8 +#define FRAMESZ_MAX 32 static void txfifo_reset(MSSSpiState *s) { @@ -104,10 +105,8 @@ static void set_fifodepth(MSSSpiState *s) s->fifo_depth = 32; } else if (size <= 16) { s->fifo_depth = 16; - } else if (size <= 32) { - s->fifo_depth = 8; } else { - s->fifo_depth = 4; + s->fifo_depth = 8; } } @@ -301,6 +300,17 @@ static void spi_write(void *opaque, hwaddr addr, if (s->enabled) { 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; break;