From patchwork Tue Aug 7 07:57:51 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Joel Stanley X-Patchwork-Id: 143565 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp4196098ljj; Tue, 7 Aug 2018 00:58:42 -0700 (PDT) X-Google-Smtp-Source: AA+uWPwzScFEhvgc2mJAbkWahnu/OnQW+XC1oiTIB2pM1PtJLgtPtHGLPQQiOIqsUPmYTU5cyVCf X-Received: by 2002:ac8:f2c:: with SMTP id e41-v6mr5181755qtk.250.1533628722694; Tue, 07 Aug 2018 00:58:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533628722; cv=none; d=google.com; s=arc-20160816; b=Jf+gWbJQ5fovaaEgCatBKJgkBCsVOLzknHHprCCAgYB7qTfkJ1TsEUVjKxKGwSEkkh 4/8/L0HxDq3k1Tb4zHoSXSvtZ8oi1OvkcFW7w60/+8EJpLvSV+uhOG8xc1z1I3KWug+S AtlxSjhm2XZiTka8gWshbEo38P5HOj8dFzFE3TU9YwNrW4CYjLl8JoVGJKIxdm65RMBJ HmZdbwLY3ZHf/z20hJBAyhweulW408HtXWzjdmn6Ze13o/itb+WyKS7X3hWcZJHcmP7f ZvtBD8Pf/nvjrJjw6QdvtmEc9oQU5IYJ/gY5+VmN8gDP1IxHPazgsPnoXR2Cm2IDs+cz KFsQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=pM0KI2p90mEy8ReropfVQoaeacLNStOyD/+HuoyhGWs=; b=Afz4cX32BC5sx2mzztPLQfGjVzRkvfTJafio7OaUmbng0pJb8qfIqEX/+h59LRNFW0 HP8k8aIZ/8eYOKlfozrt2k8efz09MlWPjMBKftp+ogoUJs2LMwDlsiE8yNFpfMvsKtaj sADD7EmpInfz5IdEiQWgBbLDzzEanMVLO9lM5/p38A0ua50zwkcxG3T9NneZGKJ/6pDn 6WFogoqUjOYkgUDcgwiZWQzoxm+oe4UvCVvi1o91NUquQCOmTUImW3xv88JDL7QtecHf GRlPuFrSBA5E1H3ETncJOV5ABlUn0cYiYPoDSRX7HJ9+zHm8tl9tnX848UbLRgekvLXb pIeA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=EwIORujb; 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" Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id p55-v6si717719qtp.155.2018.08.07.00.58.42 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 07 Aug 2018 00:58:42 -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; dkim=fail header.i=@gmail.com header.s=20161025 header.b=EwIORujb; 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" Received: from localhost ([::1]:37801 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwt8-0002WP-4s for patch@linaro.org; Tue, 07 Aug 2018 03:58:42 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60641) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwsh-0002UX-PJ for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fmwsh-0005Th-4y for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:15 -0400 Received: from mail-pf1-x444.google.com ([2607:f8b0:4864:20::444]:45112) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fmwsf-0005Sh-4r; Tue, 07 Aug 2018 03:58:13 -0400 Received: by mail-pf1-x444.google.com with SMTP id i26-v6so8152420pfo.12; Tue, 07 Aug 2018 00:58:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=pM0KI2p90mEy8ReropfVQoaeacLNStOyD/+HuoyhGWs=; b=EwIORujbUy9WtEYETd877sURJNukH9wz3KYbihICBhQVgIfjZy//JT+D3dnlhDqhjR mKozZHWa5Nl/O6fNFFLGkFd4x6pgzfHS8SvAbuHquLO4nf29pLMxtzXkOu/My4ohCyvQ 6Qm1dXnQMWJMGu2of9bCHfDa/RzQlbw+0cvH+DUkI1fo9TEx+roiEHZSUTGbS18rxvX+ HWbOp7J/mWLeJBxPIoFRDHy+MtNb6tLU9gHVRCoTsj8hwMZfpUb0+SmmCf/5154GMNM3 PPPXSqqz27oECw5/DFAAFZa6tBgymNDEMY2yfc+9fW4Bgt/GCeIsQu62EKwhbdN2S8FK rL4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=pM0KI2p90mEy8ReropfVQoaeacLNStOyD/+HuoyhGWs=; b=EL+0d7RuajF/8rODFDikS2J6/DSqJuOyIlBVqIyf6JL2Zi2w1XpGyolcO/GT0mz2N7 hJ0aGIsPbLVSS3NIUIKhMC2h6jYjSYtWY7hzVv7MtLMOOU7bRWPTr2PYjBo2SwLZaPVV GlzlYVDYKWqOipioR8tP5HjDiKKUcbwplO9vSD7YUUitZyd9FwtyGRsE4ucTx36NEs7E birKCDYmrbaliMoH/WlYMAso23c/YgPgDhvblgzJdn22i0pN//MTnZQSbVPtfC/OyIhK BQHhxvBr2Qqa1HvQrGSNJxXykT5uc9uChBOZDpYkv/uOTxbM6Gyab+yrhqR9Zx5MY3VV tRYQ== X-Gm-Message-State: AOUpUlH8K9SSpTzT4En4MAov0/Uw5GlQ9vqvcADW/vzPGpZXu3tcFwX6 AV9pVmbYG4xuaZs4UWtUT0I= X-Received: by 2002:a63:5350:: with SMTP id t16-v6mr17341411pgl.196.1533628692103; Tue, 07 Aug 2018 00:58:12 -0700 (PDT) Received: from aurora.jms.id.au ([45.124.203.18]) by smtp.gmail.com with ESMTPSA id p73-v6sm1466263pfk.186.2018.08.07.00.58.08 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 07 Aug 2018 00:58:11 -0700 (PDT) Received: by aurora.jms.id.au (sSMTP sendmail emulation); Tue, 07 Aug 2018 17:28:05 +0930 From: Joel Stanley To: Peter Maydell , =?utf-8?q?C=C3=A9dric_Le_Goa?= =?utf-8?q?ter?= Date: Tue, 7 Aug 2018 17:27:51 +0930 Message-Id: <20180807075757.7242-2-joel@jms.id.au> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180807075757.7242-1-joel@jms.id.au> References: <20180807075757.7242-1-joel@jms.id.au> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::444 Subject: [Qemu-devel] [PATCH 1/7] aspeed_sdmc: Extend number of valid registers 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: , Cc: Andrew Jeffery , qemu-arm@nongnu.org, qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The SDMC on the ast2500 has 170 registers. Signed-off-by: Joel Stanley --- include/hw/misc/aspeed_sdmc.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.17.1 Reviewed-by: Cédric Le Goater diff --git a/include/hw/misc/aspeed_sdmc.h b/include/hw/misc/aspeed_sdmc.h index 551c8afdf4be..682f0f5d56dc 100644 --- a/include/hw/misc/aspeed_sdmc.h +++ b/include/hw/misc/aspeed_sdmc.h @@ -14,7 +14,7 @@ #define TYPE_ASPEED_SDMC "aspeed.sdmc" #define ASPEED_SDMC(obj) OBJECT_CHECK(AspeedSDMCState, (obj), TYPE_ASPEED_SDMC) -#define ASPEED_SDMC_NR_REGS (0x8 >> 2) +#define ASPEED_SDMC_NR_REGS (0x174 >> 2) typedef struct AspeedSDMCState { /*< private >*/ From patchwork Tue Aug 7 07:57:52 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Joel Stanley X-Patchwork-Id: 143568 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp4199047ljj; Tue, 7 Aug 2018 01:01:45 -0700 (PDT) X-Google-Smtp-Source: AAOMgpfBk140v+1/wi2dTfVqcWit/Brw9i/ZbkJcrgZE0TZJFKnzP5KeBo3nnA4MscD5ipsefiwi X-Received: by 2002:ac8:2775:: with SMTP id h50-v6mr18216387qth.67.1533628905649; Tue, 07 Aug 2018 01:01:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533628905; cv=none; d=google.com; s=arc-20160816; b=WJhaOJqV2jA9W97Ef96DQMax4qRQRwEekYCbG6DGF3ca/h7mKptGJ+yAseuIvFxxrL G4od8iG4vZB3jacZhQifSzADAsoNHz+SC80etEl0uFsKcuCqBOq5wP6g/l1urkpDfnZ8 5Y0WGPvzBNthXnUt38DFnwcOKnNXdMeejqVu5chjrV+ClF69uxOwIA+NptbIMW1p2j+y R6I1VpQoSQsmDJ4Ey3qMfQ+FXO/wLPwsU0poF8xGRetaBKSpT52ahzehl7fHINY6x6K0 tEVPpMEVeRK2GWcOTtEWWfXmscEU9jEfRO3n0c2eGvAtVjlkqAIBIGSVHu9eL6UAKlO8 mRAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=u8DAb17wNI/xayU+USr02m8Zx4LCPxglib3dKDzYGdw=; b=r4lGvhUeIT9alP3AF6W7LMuG7PSZeTzQxRe+kQ+DNh3a2kzPuS5oeFNP8hZepjlRHF 0tVIOwke5i7Agd2AAp3ijDjoZALo1EmV99f+zINUYRVhMlamx1XkupKjeASOw79G9h80 UCQp310U7hMMoNtkvcckFLuJ9GxJ5sQUn6zU+aejPdJM8ElfTvZKvuvx1P/Hh41Upt+F 4rukL6bDtqJx7j77RxB2CCUgp91B8PGiJ0kKVka7jj40sdUMqg9qbGBJrkTuOkuSHKCD mYXHC+401lrEja1My07S+cGuI8/2rTDbqQzrL72wdyR3fEr2CcqHEVju3mNZ30/18Nhf ByGg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=pdAUsIzp; 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" Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id h47-v6si694901qth.404.2018.08.07.01.01.45 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 07 Aug 2018 01:01:45 -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; dkim=fail header.i=@gmail.com header.s=20161025 header.b=pdAUsIzp; 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" Received: from localhost ([::1]:37822 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmww5-0005Gd-4t for patch@linaro.org; Tue, 07 Aug 2018 04:01:45 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60678) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwst-0002f8-Gi for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fmwss-0005XK-N9 for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:27 -0400 Received: from mail-pl0-x242.google.com ([2607:f8b0:400e:c01::242]:36392) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fmwsm-0005W6-Bz; Tue, 07 Aug 2018 03:58:20 -0400 Received: by mail-pl0-x242.google.com with SMTP id e11-v6so6783317plb.3; Tue, 07 Aug 2018 00:58:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=u8DAb17wNI/xayU+USr02m8Zx4LCPxglib3dKDzYGdw=; b=pdAUsIzpd/NthsyolVXQY3oTMo/9S+AcPZHBzyvU11MNU3fvU5JDHjimjiiiMDMbIt eSOotaAWt/bSR1ZCzp5TwVbSbqUeo8uq0CXtHI3/DE1ev1bVgCiTu9yUobnldLsFbgGi H0lkW4hxqMidVOIbaHfY/zgylHU4PAl9hr8gNi+IFSTifO5MYnFoADp/1LvBv+LmP7fN hNuiNKRhJp808ybyg6GPhuXCjmo591LhY/J/UCUMYB+Q7OdHsHTAGZnPobb4Z4QF6xrS KfG3uIPr+B1UNQrCA53F63KQsODIbvJLLBObC1iGkkU+goHZF69v6RLBw1O1rmr45ukg eJqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=u8DAb17wNI/xayU+USr02m8Zx4LCPxglib3dKDzYGdw=; b=iPEdZDtd2hpcwvoWp0Z06zboS/PHvfemagq6NdOaJ6lKCZ7eAjsloBOSYdhqJ5YQOh /3rt53Icl5mJTtA3TEm9evbvXxmVT1HiZptLkI6vIp8Tn5EVTH+Q0gkxW8ZfstsPIAnP 1Tl5HIenjcJUPd1Sv4nD1zqNuS+Nzs2fyh/ezZK7EWf4wBIG1LXM4u1S31XcfPMWrsng 4hThTgdgb6Wz5ZL/dJ8p9N4NWNLQa8K9Txib4z9BUhJie6XexQ1ZYOSL4ptaMvsca8p7 5XsV3RezpIHuAj5HocJq1bbEGaNwkwXhGWxs4F79RjfPcOMgk/aEDjtTOGRDDKqQq5Qq R+6g== X-Gm-Message-State: AOUpUlFJBVJ3OAfYFb5bmDd1FxCaRmDc78OsDLKS3QF7FPgQCVFbXov3 wOg1GzCl+lKw/grFFSg48HY= X-Received: by 2002:a17:902:b08a:: with SMTP id p10-v6mr16608034plr.217.1533628699315; Tue, 07 Aug 2018 00:58:19 -0700 (PDT) Received: from aurora.jms.id.au ([45.124.203.18]) by smtp.gmail.com with ESMTPSA id l85-v6sm1726016pfk.34.2018.08.07.00.58.15 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 07 Aug 2018 00:58:18 -0700 (PDT) Received: by aurora.jms.id.au (sSMTP sendmail emulation); Tue, 07 Aug 2018 17:28:12 +0930 From: Joel Stanley To: Peter Maydell , =?utf-8?q?C=C3=A9dric_Le_Goa?= =?utf-8?q?ter?= Date: Tue, 7 Aug 2018 17:27:52 +0930 Message-Id: <20180807075757.7242-3-joel@jms.id.au> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180807075757.7242-1-joel@jms.id.au> References: <20180807075757.7242-1-joel@jms.id.au> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c01::242 Subject: [Qemu-devel] [PATCH 2/7] aspeed_sdmc: Fix saved values 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: , Cc: Andrew Jeffery , qemu-arm@nongnu.org, qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This fixes the intended protection of read-only values in the configuration register. They were being always set to zero by mistake. The read-only fields depend on the configured memory size of the system, so they cannot be fixed at compile time. The most straight forward option was to store them in the state structure. Signed-off-by: Joel Stanley --- hw/misc/aspeed_sdmc.c | 27 ++++++++------------------- include/hw/misc/aspeed_sdmc.h | 1 + 2 files changed, 9 insertions(+), 19 deletions(-) -- 2.17.1 Reviewed-by: Cédric Le Goater diff --git a/hw/misc/aspeed_sdmc.c b/hw/misc/aspeed_sdmc.c index 0df008e52a18..24fd4aee2d82 100644 --- a/hw/misc/aspeed_sdmc.c +++ b/hw/misc/aspeed_sdmc.c @@ -126,10 +126,12 @@ static void aspeed_sdmc_write(void *opaque, hwaddr addr, uint64_t data, case AST2400_A0_SILICON_REV: case AST2400_A1_SILICON_REV: data &= ~ASPEED_SDMC_READONLY_MASK; + data |= s->fixed_conf; break; case AST2500_A0_SILICON_REV: case AST2500_A1_SILICON_REV: data &= ~ASPEED_SDMC_AST2500_READONLY_MASK; + data |= s->fixed_conf; break; default: g_assert_not_reached(); @@ -198,25 +200,7 @@ static void aspeed_sdmc_reset(DeviceState *dev) memset(s->regs, 0, sizeof(s->regs)); /* Set ram size bit and defaults values */ - switch (s->silicon_rev) { - case AST2400_A0_SILICON_REV: - case AST2400_A1_SILICON_REV: - s->regs[R_CONF] |= - ASPEED_SDMC_VGA_COMPAT | - ASPEED_SDMC_DRAM_SIZE(s->ram_bits); - break; - - case AST2500_A0_SILICON_REV: - case AST2500_A1_SILICON_REV: - s->regs[R_CONF] |= - ASPEED_SDMC_HW_VERSION(1) | - ASPEED_SDMC_VGA_APERTURE(ASPEED_SDMC_VGA_64MB) | - ASPEED_SDMC_DRAM_SIZE(s->ram_bits); - break; - - default: - g_assert_not_reached(); - } + s->regs[R_CONF] = s->fixed_conf; } static void aspeed_sdmc_realize(DeviceState *dev, Error **errp) @@ -234,10 +218,15 @@ static void aspeed_sdmc_realize(DeviceState *dev, Error **errp) case AST2400_A0_SILICON_REV: case AST2400_A1_SILICON_REV: s->ram_bits = ast2400_rambits(s); + s->fixed_conf = ASPEED_SDMC_VGA_COMPAT | + ASPEED_SDMC_DRAM_SIZE(s->ram_bits); break; case AST2500_A0_SILICON_REV: case AST2500_A1_SILICON_REV: s->ram_bits = ast2500_rambits(s); + s->fixed_conf = ASPEED_SDMC_HW_VERSION(1) | + ASPEED_SDMC_VGA_APERTURE(ASPEED_SDMC_VGA_64MB) | + ASPEED_SDMC_DRAM_SIZE(s->ram_bits); break; default: g_assert_not_reached(); diff --git a/include/hw/misc/aspeed_sdmc.h b/include/hw/misc/aspeed_sdmc.h index 682f0f5d56dc..e079c66a7d73 100644 --- a/include/hw/misc/aspeed_sdmc.h +++ b/include/hw/misc/aspeed_sdmc.h @@ -27,6 +27,7 @@ typedef struct AspeedSDMCState { uint32_t silicon_rev; uint32_t ram_bits; uint64_t ram_size; + uint32_t fixed_conf; } AspeedSDMCState; From patchwork Tue Aug 7 07:57:53 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Joel Stanley X-Patchwork-Id: 143567 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp4198572ljj; Tue, 7 Aug 2018 01:01:22 -0700 (PDT) X-Google-Smtp-Source: AAOMgpdo/v5Fn1aDVuiMeQPLq7b+aJcQ+VeEopO99m6GupqgO3HJYOYIQA9wfGGDEU81sOiwAHIg X-Received: by 2002:ac8:26ee:: with SMTP id 43-v6mr17770642qtp.274.1533628882138; Tue, 07 Aug 2018 01:01:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533628882; cv=none; d=google.com; s=arc-20160816; b=q8JC3qgzOG/O4EMFAFu/CW3ssdTnJRer/mXM5lutXPU2402bfZPpDLP+RV06334f/n Zv9+RnNnl+MXC5MxqJuHxbVjhL62asaX4quLYU6xDBUSazZEBjeP1F+U+mNp1PLi5ycR Vzs3H6da/9m73AV/lYpOolrGWwLkGWcjJMM0WdnxSqhzhvCxEigDxM8RkBORqvFXHVCJ VvQ+ojL+MKGVpKQ/t5y6q5yMa2qCwoB1WVb5Y+ihK3Tjw4HgVc/dy5E8Cw1z4j1ASh4O +fO3lE+D43DZ+d597V1PuHTXldk4ywz3W4/hyOPURDK+E2foTzETyCGo2XMnEt1d2+KD C/6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=IwxgDWYwXXaZerE0XDTDwsloGi00V2OC1UcWga4a5gM=; b=CyolSGOKKruUWpY0b0HKOJRnaEEbRpO/+XuvlFd1Kbl1cQcmF1Wc7pCPIvDgce9ahj I3OnDuKsGByMygJoONMSRHppbr2+SDcW3CM1g2ciQA7Vbc3JhPSVehhwZs7oTQOEaEUQ LG4h1tl18b9zFdD8nVbcF7WdZuiT2Rm6PaZ1RjgfZoSZcZOLOarlEDibXf/g4jdcFVbl a1A+jYCcVaHE18iUxFEoYTc///qLuVv676o+kWJHgv4RMT5yUFMNsWPOSkb8v0MKr5wW kzAym60WiSCcgd+6BSnR44IwK4dLEERypU8LqwqBQLIuSrB6GE2iuDlyZVIEY54QwFAm myWw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=lhkKUzoN; 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" Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id k5-v6si681971qkb.28.2018.08.07.01.01.21 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 07 Aug 2018 01:01:22 -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; dkim=fail header.i=@gmail.com header.s=20161025 header.b=lhkKUzoN; 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" Received: from localhost ([::1]:37819 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwvh-00056N-It for patch@linaro.org; Tue, 07 Aug 2018 04:01:21 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60746) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwt3-0002m8-30 for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fmwsy-0005ZN-85 for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:37 -0400 Received: from mail-pl0-x242.google.com ([2607:f8b0:400e:c01::242]:38402) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fmwst-0005Xa-TT; Tue, 07 Aug 2018 03:58:28 -0400 Received: by mail-pl0-x242.google.com with SMTP id u11-v6so6777552plq.5; Tue, 07 Aug 2018 00:58:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=IwxgDWYwXXaZerE0XDTDwsloGi00V2OC1UcWga4a5gM=; b=lhkKUzoNTYy+pvdb/wqFZzoHgaNzpvjeBhP912q+kEd79EDjdpRxRaWp9AWPAJtnFK a5hKXzpZTdprf8ZoSozMrzTWge1c9zmXoNIncJ9V2OlXVPpT3zTu8+PSJ+4GNg8DvM4A sxYWj5iH5YduCNRI+G3IV3ctV6rA8EW1+hcTiPbj74RVD94BBd0QTWwKei7w4iWNt68E i0E26Wkx9LpBKb3O3btnI4ctfXHK6hr6B6n0kjp/TWSGGF03B2AKRKISzznNxDUgX/Gn m0Xzvd4ipI5vbEpl3xxfJIAZZyavNFJoDfQ99OKZsxzRDO1BcR3Wsq1YZaYj9oQFNFsm lICA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=IwxgDWYwXXaZerE0XDTDwsloGi00V2OC1UcWga4a5gM=; b=s1oq+qdGMNDO1izsOPQpp1C2F9oCnzVGUzIWRsGGGfBfVOe8w0oNdWnVT69eU0p0uD NVZReK+8+Mk8rZHRUfmPbjfBJg5e4fOuiOiib4dfF34YA/JJaVUcOuGzR0XCXXySPz5N asR6OVbe6lH9tyfQZOlbnpbI93DIr1u6QG9JqbaLmIvjTLRRbSc3QmPYL3M6GOVskRFp vMfUxNa9vlUpi+IDp0Nk8GfX4VGqsJHJ+N1BeZMJHC7HjAMZFWtJ/KT3vjJHuLsLRtAx 56NgDtapF4RssppisC+TtmqM+FRjxEEje9qrTU8zVm49FzSQVn7iH/xZzwgpiJUWRa7X aXDA== X-Gm-Message-State: AOUpUlE+B7vgBqzDE7Bfuyr3SuTTB/cx7iAaDFVaM8J+qVBP7OIyWlGO q/LU2BN7iJTf3AzZutDwtIg= X-Received: by 2002:a17:902:d706:: with SMTP id w6-v6mr16747940ply.158.1533628706942; Tue, 07 Aug 2018 00:58:26 -0700 (PDT) Received: from aurora.jms.id.au ([45.124.203.18]) by smtp.gmail.com with ESMTPSA id a191-v6sm991550pge.45.2018.08.07.00.58.23 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 07 Aug 2018 00:58:26 -0700 (PDT) Received: by aurora.jms.id.au (sSMTP sendmail emulation); Tue, 07 Aug 2018 17:28:19 +0930 From: Joel Stanley To: Peter Maydell , =?utf-8?q?C=C3=A9dric_Le_Goa?= =?utf-8?q?ter?= Date: Tue, 7 Aug 2018 17:27:53 +0930 Message-Id: <20180807075757.7242-4-joel@jms.id.au> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180807075757.7242-1-joel@jms.id.au> References: <20180807075757.7242-1-joel@jms.id.au> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c01::242 Subject: [Qemu-devel] [PATCH 3/7] aspeed_sdmc: Set 'cache initial sequence' always true 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: , Cc: Andrew Jeffery , qemu-arm@nongnu.org, qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The SDRAM training routine sets the 'Enable cache initial' bit, and then waits for the 'cache initial sequence' to be done. Have it always return done, as there is no other side effects that the model needs to implement. This allows the upstream u-boot training to proceed on the ast2500-evb board. Signed-off-by: Joel Stanley --- hw/misc/aspeed_sdmc.c | 1 + 1 file changed, 1 insertion(+) -- 2.17.1 Reviewed-by: Cédric Le Goater diff --git a/hw/misc/aspeed_sdmc.c b/hw/misc/aspeed_sdmc.c index 24fd4aee2d82..9ece545c4ffa 100644 --- a/hw/misc/aspeed_sdmc.c +++ b/hw/misc/aspeed_sdmc.c @@ -226,6 +226,7 @@ static void aspeed_sdmc_realize(DeviceState *dev, Error **errp) s->ram_bits = ast2500_rambits(s); s->fixed_conf = ASPEED_SDMC_HW_VERSION(1) | ASPEED_SDMC_VGA_APERTURE(ASPEED_SDMC_VGA_64MB) | + ASPEED_SDMC_CACHE_INITIAL_DONE | ASPEED_SDMC_DRAM_SIZE(s->ram_bits); break; default: From patchwork Tue Aug 7 07:57:54 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Joel Stanley X-Patchwork-Id: 143566 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp4196729ljj; Tue, 7 Aug 2018 00:59:27 -0700 (PDT) X-Google-Smtp-Source: AAOMgpfMdhGMZhjNk3rh8tHsrG50kX2N7rDQ00TqIjsdxjyCh74eIRQPjRKAZvkDr1Caq8yOBnBk X-Received: by 2002:a0c:91d0:: with SMTP id r16-v6mr16069446qvr.38.1533628767134; Tue, 07 Aug 2018 00:59:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533628767; cv=none; d=google.com; s=arc-20160816; b=NodtFz2uI2YpojOgN7exhdMWihG15+ML13EAEcytf9EKf+ajFWbvGiSDAkIDBdsaiW 7hxSxMGHAzCfRfbvf5KREXPDEtwxbn9O9idJpg1WH+49Pea8n8d7yL7SixguB1Fa5PIP QEvOJ9Mk5lGrz8eo218g2Julvt/ukNgcFmxo6bMTgCmCapEQzts+HQC4IYLZWkrc9k/Y DdNWoRdeQfwG+hT5wt364FfT3LUfJ8fhOJNTVOFWUw2m7W779yGuDuJ3A2dYwC00qohZ Aggc6CYzyvPxAmJGzUg13uu10AXaqBnxcBaCfIzztq8BOZyYfmpluH9PcdXZeRh9a1qh feDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=SBBr+2QFo4lDT8xlNJTzO+Id2utX2pJW4S/v1I9pHbU=; b=whaZrRV2J4YlWYMR+At0bi/2DaXpg+/Lx6UahQOsN5o02qGtKH5QNBJdHQM+IMVH6a QSgC42ccWmshFIiyOQ7j4SJBIR9vopn+FC+xyTW+pr4nbMig/QN8GizeCDUgzAPRxzeE idkFE4qiJgBQTtDWPsjFGd3b04sudKn4cQRe7OUSux5Ja23/EXw+mYtQk8P9/z8vfmQF K37wu9rcf0IMWe5nG+9b+fhq+hR2phBv93M7AQczzds7ZxlwkksKVAyiKCB+1GIk8Q1N /xMOA3zi8trRuXQOF5j3zQAbBDl9Bvll/5Ecz6f1Sv8LZ6CH/bvUvxcVhWX/qO+A1EzN l23w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=THNI6DW+; 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" Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id l190-v6si621673qkf.218.2018.08.07.00.59.26 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 07 Aug 2018 00:59:27 -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; dkim=fail header.i=@gmail.com header.s=20161025 header.b=THNI6DW+; 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" Received: from localhost ([::1]:37806 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwtq-00035k-Ia for patch@linaro.org; Tue, 07 Aug 2018 03:59:26 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60768) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwt5-0002nE-RT for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fmwt4-0005ba-Tg for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:39 -0400 Received: from mail-pl0-x243.google.com ([2607:f8b0:400e:c01::243]:37619) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fmwt1-0005aC-50; Tue, 07 Aug 2018 03:58:35 -0400 Received: by mail-pl0-x243.google.com with SMTP id d5-v6so6783996pll.4; Tue, 07 Aug 2018 00:58:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=SBBr+2QFo4lDT8xlNJTzO+Id2utX2pJW4S/v1I9pHbU=; b=THNI6DW+E2zggu0rxmhQ5+KS61Aoyvujj7lkMguUKtDQTc+Y/nki92f4U4d5rp558U qqVysxUqoQv72z4k2KsVcJ2v8LWwy+CP/UEssn7GwxiSpvHqx775TZWDBWf0FWBz2EKC KqRodvSCwhCNlP0hzWXfZgaMEwVzwcdHWQAZtHXwUASJtY4Angxt5929n1uXmh+DNfxT B80FtZqDkHY/UMg71JWkNq5X65rkyE7jSmwHBZE4L2oB6WAJvU7C82EyCwOuZKPhCw2C ZTF08nICFAauQVGLXfvtFLzSSN6tBc+n5ud7mB4nGs+QwrMoK0CHERCzrfn0tDDqrbx9 Xvsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=SBBr+2QFo4lDT8xlNJTzO+Id2utX2pJW4S/v1I9pHbU=; b=Uf1heWzT6P5rux13DWVbXer+VNx6hSCDg8urf+HFJCZJGFLqX9FvmPy6mLOFZH+J36 Q0ifq3y+kqKj3+yTYUEYxdlYPsw40dY48Sl36HXA0rHs0oXX4OW8QxooBdombrr+b8GZ 3RrXokBN9Vuo0pjqrJpX5tntaXJhrDz1jkqFQyg9DmUANaLbG46jhR22Qjx/h6gQ18HN fVGDDfHLKP9RCMckOhw12Xl1ycXFH2/FxaoP//vjvcuGrUNb3/SvQLFXvOIQ8u3F163V +Kb7mP5MkNRK0fFT9hMXXpZQkAzBSd9FNpiJDtZ6zW8ubdTtO5uXnbFPBSDqyd8WvzVQ HcqA== X-Gm-Message-State: AOUpUlHMh5FTaPdh41l/ECM8WGS2Vh5F4kiXTKmwoosQ8fa0795K+6sQ BvQEiRwsZDK7KpsHL2Npg4UkKptd X-Received: by 2002:a17:902:e005:: with SMTP id ca5-v6mr16848285plb.224.1533628714139; Tue, 07 Aug 2018 00:58:34 -0700 (PDT) Received: from aurora.jms.id.au ([45.124.203.18]) by smtp.gmail.com with ESMTPSA id d191-v6sm1458902pfg.172.2018.08.07.00.58.30 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 07 Aug 2018 00:58:33 -0700 (PDT) Received: by aurora.jms.id.au (sSMTP sendmail emulation); Tue, 07 Aug 2018 17:28:27 +0930 From: Joel Stanley To: Peter Maydell , =?utf-8?q?C=C3=A9dric_Le_Goa?= =?utf-8?q?ter?= Date: Tue, 7 Aug 2018 17:27:54 +0930 Message-Id: <20180807075757.7242-5-joel@jms.id.au> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180807075757.7242-1-joel@jms.id.au> References: <20180807075757.7242-1-joel@jms.id.au> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c01::243 Subject: [Qemu-devel] [PATCH 4/7] aspeed_sdmc: Init status alwlays idle 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: , Cc: Andrew Jeffery , qemu-arm@nongnu.org, qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The ast2500 SDRAM training routine busy waits on the 'init cycle busy state' bit in DDR PHY Control/Status register #1 (MCR60). This ensures the bit always reads zero, and allows training to complete with upstream u-boot on the ast2500-evb. Signed-off-by: Joel Stanley --- hw/misc/aspeed_sdmc.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) -- 2.17.1 Reviewed-by: Cédric Le Goater diff --git a/hw/misc/aspeed_sdmc.c b/hw/misc/aspeed_sdmc.c index 9ece545c4ffa..522e01ef8c0d 100644 --- a/hw/misc/aspeed_sdmc.c +++ b/hw/misc/aspeed_sdmc.c @@ -23,6 +23,10 @@ /* Configuration Register */ #define R_CONF (0x04 / 4) +/* Control/Status Register #1 (ast2500) */ +#define R_STATUS1 (0x60 / 4) +#define PHY_BUSY_STATE BIT(0) + /* * Configuration register Ox4 (for Aspeed AST2400 SOC) * @@ -137,6 +141,17 @@ static void aspeed_sdmc_write(void *opaque, hwaddr addr, uint64_t data, g_assert_not_reached(); } } + if (s->silicon_rev == AST2500_A0_SILICON_REV || + s->silicon_rev == AST2500_A1_SILICON_REV) { + switch (addr) { + case R_STATUS1: + /* Will never return 'busy' */ + data &= ~PHY_BUSY_STATE; + break; + default: + break; + } + } s->regs[addr] = data; } From patchwork Tue Aug 7 07:57:55 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Joel Stanley X-Patchwork-Id: 143569 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp4201476ljj; Tue, 7 Aug 2018 01:04:08 -0700 (PDT) X-Google-Smtp-Source: AAOMgpcq9iQJtGSmxpkutTTwXO8WIzGFpG5GWdoG1fesxo7zgKNy/1vjk6jeBTUmBogFgIeZAcqM X-Received: by 2002:a37:6251:: with SMTP id w78-v6mr16544420qkb.364.1533629048595; Tue, 07 Aug 2018 01:04:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533629048; cv=none; d=google.com; s=arc-20160816; b=m2NcrRjamp+4xrBhT5ogn+hFrPJQ2IPp8hdV+sLL/4KbdNtJzSZdV+X1AyLZuFSxDi qiNxfLr8W2KYxDYn4a74bMWKwrxqiyJSn2oVZ2c4cMUi4a0oEtiT+TGBpPD/7dIg2isW n+SZQynW1EYpKf5uYO4tL+3JsZhZo7PI3EL9UhsmIeU0ZwJ/oBhLsAHVRnQj/KcsLO4B zkZSQr4FhBrw8OSxXTvsCvcZoLNewhgFeFWW2ZeLa5Tro3xyqf/4cFdzXPqajKQiFxW2 iLJo9elBwVPbbNzCFWCuOOvbedK3DL7uI0urnTHuxyAJBAl7jOR8hhapBWJjesyvPsel yWkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=EllvPOZEw1edECiX0N9er7aLKQoz9Nd8QHRRtVYO/4I=; b=kJeBdG96sHJjn0AFTYHjNFYco8nmUppz7/NpILb8o5qF+n/VFffOatjNGcnEfzGgje 0DkI0xQHVlgD7NX0CY5+fiCzGQcqErkpR7G/lRFGRHU//67Zba0zdHnUH7PwM/O716hU BsF5/qEUyv0DQhOyo38GQnqqhkjzPHKY7Jf/o8zkbZicrFz6UxoPNvxNINp4lfMa6XFU kHHEZLTHi7rrq8UEjPJDO1xL9iSfKCnkmab7fxu7lLg/wQ+eF6c7FtdfScRSC3DY+Z3i U3U9kONTfBSEDqbc+dgzhZO87eJdNR5GagcGyTRasFT7v51xR+jVraOAU8W7MOgBhILA kHtQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=PBgjlK9t; 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" Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id u87-v6si409240qkl.29.2018.08.07.01.04.08 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 07 Aug 2018 01:04:08 -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; dkim=fail header.i=@gmail.com header.s=20161025 header.b=PBgjlK9t; 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" Received: from localhost ([::1]:37835 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwyO-0006jZ-4M for patch@linaro.org; Tue, 07 Aug 2018 04:04:08 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60817) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwtI-0002xl-58 for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fmwtH-0005fG-Fz for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:52 -0400 Received: from mail-pg1-x541.google.com ([2607:f8b0:4864:20::541]:41901) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fmwt8-0005cC-Fg; Tue, 07 Aug 2018 03:58:42 -0400 Received: by mail-pg1-x541.google.com with SMTP id z8-v6so7449794pgu.8; Tue, 07 Aug 2018 00:58:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=EllvPOZEw1edECiX0N9er7aLKQoz9Nd8QHRRtVYO/4I=; b=PBgjlK9tEXncFLetaov1pBs837YkSAhe6YcyF6pG/SDh07cuRtsu8tEdyn7HFYvvJJ FDCc+AHzHRS9/mm0JLn2eiD3wbTgTbZQ4bIUuQAHZbADnv4sBsgFajyPbq+0AArKCzIH 5xXJYDbydHZljKfZfhXyNwoGdRL5w3RkqvaWNgLVtjde8WA86riBcFRkrFLXQ26XKXxe wuWRgG1PzW24jxtVO2gkl98eFJipUe7G2AILvo6zcejjfZkDSexjDrEtcN1oMjx10YvU 4WRTsmEVy3Hh90NHHRuxrXNvYGZ7nSJTctmGsw5WWB04Bklsvspulan/7Ie9NnCGkiEp ImIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=EllvPOZEw1edECiX0N9er7aLKQoz9Nd8QHRRtVYO/4I=; b=tIWL/+9F81WtUfzg+zOpr0jwPgAhOnTJuhUWorB3XyImayGqRTOb9/EeAYjUAj54SZ +wZaPoFfN1ciTnkoJnfrAnYhumyh4c80qrG1R4qkHm4Y91nZUbKg4oBfFjxjWRFupK69 IrAZ9sCmLttNwR+C18lcVEB4dYFVi9XBNJ1TaKpxGjHO1zOUf2lJgABDHKWvJ5+tt7VS Zn2d8iLmjjrZuAX7a6DZ0oSzsY0gyPDM+/7VGQb+QBuJ6kOXPdfnSCi29uNOBN4qgpj8 7odZ6Cm8r6mEDQmcP+ZgmoCcH/WzMrfp9z5+RZ/p2CtL2lNK8p5M22+Z9uF2qvg5dl6Z rycg== X-Gm-Message-State: AOUpUlGDfT3TILd4er5Re7lXFfUHABjSGfOEGaJUvZJ5kyEz60gNxvwh kz20yjGMU13SNGEEDf5DEF0Az9RM X-Received: by 2002:a62:225d:: with SMTP id i90-v6mr20373221pfi.246.1533628721376; Tue, 07 Aug 2018 00:58:41 -0700 (PDT) Received: from aurora.jms.id.au ([45.124.203.18]) by smtp.gmail.com with ESMTPSA id d191-v6sm1459491pfg.172.2018.08.07.00.58.37 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 07 Aug 2018 00:58:40 -0700 (PDT) Received: by aurora.jms.id.au (sSMTP sendmail emulation); Tue, 07 Aug 2018 17:28:34 +0930 From: Joel Stanley To: Peter Maydell , =?utf-8?q?C=C3=A9dric_Le_Goa?= =?utf-8?q?ter?= Date: Tue, 7 Aug 2018 17:27:55 +0930 Message-Id: <20180807075757.7242-6-joel@jms.id.au> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180807075757.7242-1-joel@jms.id.au> References: <20180807075757.7242-1-joel@jms.id.au> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::541 Subject: [Qemu-devel] [PATCH 5/7] aspeed_sdmc: Handle ECC training 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: , Cc: Andrew Jeffery , qemu-arm@nongnu.org, qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" This is required to ensure u-boot SDRAM training completes. Signed-off-by: Joel Stanley --- hw/misc/aspeed_sdmc.c | 9 +++++++++ 1 file changed, 9 insertions(+) -- 2.17.1 Reviewed-by: Cédric Le Goater diff --git a/hw/misc/aspeed_sdmc.c b/hw/misc/aspeed_sdmc.c index 522e01ef8c0d..89de3138aff0 100644 --- a/hw/misc/aspeed_sdmc.c +++ b/hw/misc/aspeed_sdmc.c @@ -27,6 +27,10 @@ #define R_STATUS1 (0x60 / 4) #define PHY_BUSY_STATE BIT(0) +#define R_ECC_TEST_CTRL (0x70 / 4) +#define ECC_TEST_FINISHED BIT(12) +#define ECC_TEST_FAIL BIT(13) + /* * Configuration register Ox4 (for Aspeed AST2400 SOC) * @@ -148,6 +152,11 @@ static void aspeed_sdmc_write(void *opaque, hwaddr addr, uint64_t data, /* Will never return 'busy' */ data &= ~PHY_BUSY_STATE; break; + case R_ECC_TEST_CTRL: + /* Always done, always happy */ + data |= ECC_TEST_FINISHED; + data &= ~ECC_TEST_FAIL; + break; default: break; } From patchwork Tue Aug 7 07:57:56 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Joel Stanley X-Patchwork-Id: 143570 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp4201485ljj; Tue, 7 Aug 2018 01:04:09 -0700 (PDT) X-Google-Smtp-Source: AAOMgpfYlZSYAicrNsQ4IDrJI8eD2j+0Drpozrb5+e2xALmCInlu5k+HQqlANuPsKOC3IrGteCXY X-Received: by 2002:a37:7d85:: with SMTP id y127-v6mr16438852qkc.335.1533629049164; Tue, 07 Aug 2018 01:04:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533629049; cv=none; d=google.com; s=arc-20160816; b=Bfk3aJs73djH3Fz3sPIpCkoOeeqy7cuIgZkEC/+Z0F1JpaxsTpYlECYFq6czojqNuM eJvPyjK3qX+HZvTeb/bdk3g9qRF4OcUN+8pY0fbm3dCkNNurKod20l0/CnHFEnPG3vqV drx4T3GcWEZfSy6u8SEeAdN6FuNE+Lw86YWrlsAXE8FXv6t/7gOnhUhTEcNPChBjHdMM E13gwSZF+wW7SJsBO+8O9a2CvePmRz38S79f6lb+bwvHZ3WEhUFypQnrCw5PpeJEfMEZ VQ4D3rQXvXRVJzjKKuOtRPjwIl5Mg3TI7IQoVcQqqUMFVXly7EFaHPDmvGEb1Yt7ZAjc sp8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=LVUzio99dOgvDQkTMW0Kz3gBweM4FRQz7uPSMwwQ3js=; b=0bRYkvR6L1iBYK5jFzWEM23O9W983cAXYRDvRUZP1MPBDB9hcuVE6pBehjOQ3QYefG /FHjvIdFbQv0hGZ1KHAiHjpHGKev03PISSy8NO6uOfSSLhn9JaCMrGdYxtYbLN2QnBK4 2gDPoQP2Ar1yBFjUhVvlpzW1/tyVLpnNm+T63d2PtGjOWlV17KGyux+fpHWRU77sHI5Y ZxQNoKJmBUJbqyiWnNkHWLumEutUd+uF4Dvcs4ahp9MOsAy3kIsOkk5+0JZVmkaIzGFl SfwOrCdi4QttN4N+erAhDH/wK3+NzIUlocaMU/0Ym9ddbxwDU5BnZ08RvmOV7ZP/OAMV ixaw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=CaSHPtwt; 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" Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id w32-v6si281661qtc.338.2018.08.07.01.04.08 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 07 Aug 2018 01:04:09 -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; dkim=fail header.i=@gmail.com header.s=20161025 header.b=CaSHPtwt; 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" Received: from localhost ([::1]:37837 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwyO-0006k9-K2 for patch@linaro.org; Tue, 07 Aug 2018 04:04:08 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60830) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwtJ-0002zC-KA for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:55 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fmwtI-0005fZ-HQ for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:58:53 -0400 Received: from mail-pf1-x42e.google.com ([2607:f8b0:4864:20::42e]:36318) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fmwtF-0005dP-OS; Tue, 07 Aug 2018 03:58:49 -0400 Received: by mail-pf1-x42e.google.com with SMTP id b11-v6so8178244pfo.3; Tue, 07 Aug 2018 00:58:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=LVUzio99dOgvDQkTMW0Kz3gBweM4FRQz7uPSMwwQ3js=; b=CaSHPtwtaGGEAp0BSGGPBJaX2m1kZzKnJcv2pUDVcX7bT5Ax/YkclkU881jmW1hwrV jig3Jg0DOkR5YxYiAmA8Cl3tomiBCVLhEEdM/WLIzzjcCelJ/yDGdrCylSDTP6+dSAu7 L4bOkdm/SNfUoMzBVoAHxX6gFDsHunSSHDne4w8psO3SKuj5oaglc+rIvFeQj3veyuQw 5722slHCV+d7oJIJQ4Wj6zk48Mlk0ZunvXGaK+1yO1prDFjUJNphETCZyLu9BtPV5DVI r9VLcPq5e9PAEpFT1+/ecdPBd5Y4Pe+2FLYpHQPPuoTwEzNFNstpJfFQ7dxB+uCRHCl7 RQ+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=LVUzio99dOgvDQkTMW0Kz3gBweM4FRQz7uPSMwwQ3js=; b=AqFqOytGKLrIEHE0++sip++MLGog2BeV0woc1qLprU7qihdDPAoK2FP3vQO1fAUBiG I1iOET9xPYRWWoTdO5N/ZIEplLg9DjkYg7P7hGuh+TwMseNVnzIKj0JmYxMwvKOEJtyW MwseiZYL9Ts1Zs61xWF3Ld+64fNBDrn5SLpGWaobKLn2XKnuc1i+p3zuiL2ojNcRqgUH vkXvcNY85QhkK47ozwCtNMDgL+wy1j3nwIDRxBgXA7870KLx3gNlkpUkFPBgr4U/1VXd X3Jt6Pfdi4U5+NDH6xaFcHFBeFEJZTwgguoL/h1uMar2IrNJIP+ATb+YeAAn7D1w+vqi fUwA== X-Gm-Message-State: AOUpUlE33qwocp8tXTEgHtH+NQ4oZpDVhb68suz3I+N28NmOXghAfVIh PmkEj3ZC06rKK4iMmJEKLHw= X-Received: by 2002:a63:e255:: with SMTP id y21-v6mr17549346pgj.160.1533628728684; Tue, 07 Aug 2018 00:58:48 -0700 (PDT) Received: from aurora.jms.id.au ([45.124.203.18]) by smtp.gmail.com with ESMTPSA id 16-v6sm1550863pfo.164.2018.08.07.00.58.44 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 07 Aug 2018 00:58:47 -0700 (PDT) Received: by aurora.jms.id.au (sSMTP sendmail emulation); Tue, 07 Aug 2018 17:28:41 +0930 From: Joel Stanley To: Peter Maydell , =?utf-8?q?C=C3=A9dric_Le_Goa?= =?utf-8?q?ter?= Date: Tue, 7 Aug 2018 17:27:56 +0930 Message-Id: <20180807075757.7242-7-joel@jms.id.au> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180807075757.7242-1-joel@jms.id.au> References: <20180807075757.7242-1-joel@jms.id.au> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::42e Subject: [Qemu-devel] [PATCH 6/7] aspeed: add a max_ram_size property to the memory controller 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: , Cc: Andrew Jeffery , qemu-arm@nongnu.org, qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" From: Cédric Le Goater This will be used to construct a memory region beyond the RAM region to let firmwares scan the address space with load/store to guess how much RAM the SoC has. Signed-off-by: Cédric Le Goater Signed-off-by: Joel Stanley --- hw/arm/aspeed.c | 31 +++++++++++++++++++++++++++++++ hw/arm/aspeed_soc.c | 2 ++ hw/misc/aspeed_sdmc.c | 3 +++ include/hw/misc/aspeed_sdmc.h | 1 + 4 files changed, 37 insertions(+) -- 2.17.1 diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index bb9d33848d3f..e078269266bc 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -31,6 +31,7 @@ static struct arm_boot_info aspeed_board_binfo = { typedef struct AspeedBoardState { AspeedSoCState soc; MemoryRegion ram; + MemoryRegion max_ram; } AspeedBoardState; typedef struct AspeedBoardConfig { @@ -127,6 +128,27 @@ static const AspeedBoardConfig aspeed_boards[] = { }, }; +/* + * The max ram region is for firmwares that scan the address space + * with load/store to guess how much RAM the SoC has. + */ +static uint64_t max_ram_read(void *opaque, hwaddr offset, unsigned size) +{ + return 0; +} + +static void max_ram_write(void *opaque, hwaddr offset, uint64_t value, + unsigned size) +{ + /* Disacard writes */ +} + +static const MemoryRegionOps max_ram_ops = { + .read = max_ram_read, + .write = max_ram_write, + .endianness = DEVICE_NATIVE_ENDIAN, +}; + #define FIRMWARE_ADDR 0x0 static void write_boot_rom(DriveInfo *dinfo, hwaddr addr, size_t rom_size, @@ -187,6 +209,7 @@ static void aspeed_board_init(MachineState *machine, AspeedBoardState *bmc; AspeedSoCClass *sc; DriveInfo *drive0 = drive_get(IF_MTD, 0, 0); + ram_addr_t max_ram_size; bmc = g_new0(AspeedBoardState, 1); object_initialize(&bmc->soc, (sizeof(bmc->soc)), cfg->soc_name); @@ -226,6 +249,14 @@ static void aspeed_board_init(MachineState *machine, object_property_add_const_link(OBJECT(&bmc->soc), "ram", OBJECT(&bmc->ram), &error_abort); + max_ram_size = object_property_get_uint(OBJECT(&bmc->soc), "max-ram-size", + &error_abort); + memory_region_init_io(&bmc->max_ram, NULL, &max_ram_ops, NULL, + "max_ram", max_ram_size - ram_size); + memory_region_add_subregion(get_system_memory(), + sc->info->sdram_base + ram_size, + &bmc->max_ram); + aspeed_board_init_flashes(&bmc->soc.fmc, cfg->fmc_model, &error_abort); aspeed_board_init_flashes(&bmc->soc.spi[0], cfg->spi_model, &error_abort); diff --git a/hw/arm/aspeed_soc.c b/hw/arm/aspeed_soc.c index e68911af0f90..a27233d4876b 100644 --- a/hw/arm/aspeed_soc.c +++ b/hw/arm/aspeed_soc.c @@ -155,6 +155,8 @@ static void aspeed_soc_init(Object *obj) sc->info->silicon_rev); object_property_add_alias(obj, "ram-size", OBJECT(&s->sdmc), "ram-size", &error_abort); + object_property_add_alias(obj, "max-ram-size", OBJECT(&s->sdmc), + "max-ram-size", &error_abort); for (i = 0; i < sc->info->wdts_num; i++) { object_initialize(&s->wdt[i], sizeof(s->wdt[i]), TYPE_ASPEED_WDT); diff --git a/hw/misc/aspeed_sdmc.c b/hw/misc/aspeed_sdmc.c index 89de3138aff0..eec77f243508 100644 --- a/hw/misc/aspeed_sdmc.c +++ b/hw/misc/aspeed_sdmc.c @@ -242,12 +242,14 @@ static void aspeed_sdmc_realize(DeviceState *dev, Error **errp) case AST2400_A0_SILICON_REV: case AST2400_A1_SILICON_REV: s->ram_bits = ast2400_rambits(s); + s->max_ram_size = 512 << 20; s->fixed_conf = ASPEED_SDMC_VGA_COMPAT | ASPEED_SDMC_DRAM_SIZE(s->ram_bits); break; case AST2500_A0_SILICON_REV: case AST2500_A1_SILICON_REV: s->ram_bits = ast2500_rambits(s); + s->max_ram_size = 1024 << 20; s->fixed_conf = ASPEED_SDMC_HW_VERSION(1) | ASPEED_SDMC_VGA_APERTURE(ASPEED_SDMC_VGA_64MB) | ASPEED_SDMC_CACHE_INITIAL_DONE | @@ -275,6 +277,7 @@ static const VMStateDescription vmstate_aspeed_sdmc = { static Property aspeed_sdmc_properties[] = { DEFINE_PROP_UINT32("silicon-rev", AspeedSDMCState, silicon_rev, 0), DEFINE_PROP_UINT64("ram-size", AspeedSDMCState, ram_size, 0), + DEFINE_PROP_UINT64("max-ram-size", AspeedSDMCState, max_ram_size, 0), DEFINE_PROP_END_OF_LIST(), }; diff --git a/include/hw/misc/aspeed_sdmc.h b/include/hw/misc/aspeed_sdmc.h index e079c66a7d73..b3c926acae90 100644 --- a/include/hw/misc/aspeed_sdmc.h +++ b/include/hw/misc/aspeed_sdmc.h @@ -27,6 +27,7 @@ typedef struct AspeedSDMCState { uint32_t silicon_rev; uint32_t ram_bits; uint64_t ram_size; + uint64_t max_ram_size; uint32_t fixed_conf; } AspeedSDMCState; From patchwork Tue Aug 7 07:57:57 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joel Stanley X-Patchwork-Id: 143571 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp4203766ljj; Tue, 7 Aug 2018 01:06:43 -0700 (PDT) X-Google-Smtp-Source: AAOMgpfXxppSaf30h+3Mv5+E3iUQpuzmgwRdYErZdzyDdFkP4vi+vmgpBZ1fcHSsBWJbrJ4zm5uK X-Received: by 2002:a0c:d5f2:: with SMTP id h47-v6mr15986993qvi.218.1533629203431; Tue, 07 Aug 2018 01:06:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533629203; cv=none; d=google.com; s=arc-20160816; b=yLxebLjNjWLnoKWj0mmZfJEWEmX65GpzbTro24KCBFhlojltvPbHFr7sENQscuQqjq 7a+ayou7a59hfZmuefGK3SPmuxaTGMeFQNqxPAyHs0AiX7p4ZvAL9fGnUlYOjbKX1wfT dm7i9kiUwskb2tDO2ekbqGU6/ZkDFvR07CNqbiIzma8rcehf0yE2FD+4n1H/IwrJTrWL eVxdqZ3K55Jz5NKPxcwu5vnC/T53NFOndspnO2t3UljuvOEwHgUjdJRAh65ra64U6hS+ 3OCgLRvzWKzPNuYNVUrbNgAloA8Lkc5kj1rhUctIgT2jGEVg7ExuDov+bNt/xesXOvwG N0Ww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=3RtZ/h1iBSZFLfoCfLXbdQ+HU5csM0CuyQNEFOBPc6o=; b=Jn9cZpyB80lPwxYYxSHprMXFHw+UBa6A4el7pL4D3FgGnExgf82LQK9LrXt9u1WGmt qvo2dUdToyXuTnk+3NcFsRAqMpB6oDtiFQvGqpUpEPSpLhjnCz6IE9lBOM4NzdzAshxZ tzI0f2oEsdqhc1qX4gOHmzUHHYWe2zcdtz9SHrUvis9IiASoxC2P3uKb4a+DXrNTRPIk Jifxsi07NjQLm1m7ZEGJldg4n5h7vgaA3wuKQ1YDUt81dpC5e/QjNF+kSFldJNvpWPQ2 XKNh3X9uq98/2jgTnE7PWuolvtjTK3sE11c9J2kjrue0L5fFbxIAqGD7M6ONRldj+WNP Y+kw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=thV71t9b; 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" Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id h186-v6si748867qkd.130.2018.08.07.01.06.43 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 07 Aug 2018 01:06:43 -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; dkim=fail header.i=@gmail.com header.s=20161025 header.b=thV71t9b; 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" Received: from localhost ([::1]:37853 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmx0s-0000sW-Us for patch@linaro.org; Tue, 07 Aug 2018 04:06:42 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60881) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmwtU-00037W-6R for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:59:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fmwtT-0005iM-97 for qemu-devel@nongnu.org; Tue, 07 Aug 2018 03:59:04 -0400 Received: from mail-pf1-x441.google.com ([2607:f8b0:4864:20::441]:38680) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fmwtM-0005gZ-Rg; Tue, 07 Aug 2018 03:58:56 -0400 Received: by mail-pf1-x441.google.com with SMTP id x17-v6so8177215pfh.5; Tue, 07 Aug 2018 00:58:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=3RtZ/h1iBSZFLfoCfLXbdQ+HU5csM0CuyQNEFOBPc6o=; b=thV71t9bcbv9TbqM3oF2alcsBU5GRiVmj+M4pFZEt5DUCuI2rn5/cV49rBOnsOlSZU 1X8PQnhGwgVB9/93LouJBcx9DztKiWIs0dZtqDBedHrT63bQ4ifL2508hD/pat8oO5Dl HF1Kzco+kRhZDdtzTJO5do2hXz0n61ZU6Q3sQqXaBWnp4nT/jotEX830KW9/YM+klbL0 1HM+AICJ+ChuSIqnL13ODFlc7mkl4cG2MQ6GcK8VRosy9vy/cJELXMXTUnLJxhBP3+pa jSiC1w2BBrrEZwA30qoqYXY7ht20hnZhVeu90zOzuW9Bsqb+RT2Vu1y/KAK4PPtKBjOw m3Hw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=3RtZ/h1iBSZFLfoCfLXbdQ+HU5csM0CuyQNEFOBPc6o=; b=gPqlwCZfTS6fFDgL0A+ONBfX3ctbsTs/gV37dJytrjJl2JwhnDnWq0udLRFWZTg+Ob O+Fc9Ub73H9NtTAHbg0996eJf1ir1ltzvQstHNlbA+C+KMXNy3MtDqn0qBeaGksF3cQY y5yYCKGyP4uCLfZ+qGgDNRPkXTBtKRu2Dzr9p+0E8nE8TAyjWySeba2zlP2fwDk7yxx2 KYrbDn4esDCdakE0Ct4ow0LyU6Wx/hQMp4/5tUk0AQgVjVe0MGEiUVDZQypZi0csJNCh TxXHZwffXoQZDlaSMUtUUhOcHrPICFKFg14Ny1n3tOAGYapdxu/nenqsJ31v0L4KAkOl Wgzg== X-Gm-Message-State: AOUpUlEwWDuBZ8GJQVMggZaT90k59ZUXb+2gNCedl0YvLxY2ushwFOsA xUDgp/hrL5LUUhqjNwBVEJE= X-Received: by 2002:a62:93d4:: with SMTP id r81-v6mr20486890pfk.55.1533628735770; Tue, 07 Aug 2018 00:58:55 -0700 (PDT) Received: from aurora.jms.id.au ([45.124.203.18]) by smtp.gmail.com with ESMTPSA id p64-v6sm1421808pfa.47.2018.08.07.00.58.51 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 07 Aug 2018 00:58:55 -0700 (PDT) Received: by aurora.jms.id.au (sSMTP sendmail emulation); Tue, 07 Aug 2018 17:28:49 +0930 From: Joel Stanley To: Peter Maydell , =?utf-8?q?C=C3=A9dric_Le_Goa?= =?utf-8?q?ter?= Date: Tue, 7 Aug 2018 17:27:57 +0930 Message-Id: <20180807075757.7242-8-joel@jms.id.au> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180807075757.7242-1-joel@jms.id.au> References: <20180807075757.7242-1-joel@jms.id.au> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::441 Subject: [Qemu-devel] [PATCH 7/7] aspeed: Link SCU to the watchdog 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: , Cc: Andrew Jeffery , qemu-arm@nongnu.org, qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The ast2500 uses the watchdog to reset the SDRAM controller. This operation is usually performed by u-boot's memory training procedure, and it is enabled by setting a bit in the SCU and then causing the watchdog to expire. Therefore, we need the watchdog to be able to acess the SCU's register space. This does not cause a system reset, but only resets the SDRAM controller. Signed-off-by: Joel Stanley --- hw/arm/aspeed_soc.c | 2 ++ hw/watchdog/wdt_aspeed.c | 20 ++++++++++++++++++++ include/hw/watchdog/wdt_aspeed.h | 1 + 3 files changed, 23 insertions(+) -- 2.17.1 diff --git a/hw/arm/aspeed_soc.c b/hw/arm/aspeed_soc.c index a27233d4876b..2cbacb4430bb 100644 --- a/hw/arm/aspeed_soc.c +++ b/hw/arm/aspeed_soc.c @@ -164,6 +164,8 @@ static void aspeed_soc_init(Object *obj) qdev_set_parent_bus(DEVICE(&s->wdt[i]), sysbus_get_default()); qdev_prop_set_uint32(DEVICE(&s->wdt[i]), "silicon-rev", sc->info->silicon_rev); + object_property_add_const_link(OBJECT(&s->wdt[i]), "scu", + OBJECT(&s->scu), &error_abort); } object_initialize(&s->ftgmac100, sizeof(s->ftgmac100), TYPE_FTGMAC100); diff --git a/hw/watchdog/wdt_aspeed.c b/hw/watchdog/wdt_aspeed.c index 95f6ad186d72..f5cb30c0b584 100644 --- a/hw/watchdog/wdt_aspeed.c +++ b/hw/watchdog/wdt_aspeed.c @@ -43,6 +43,9 @@ #define WDT_RESTART_MAGIC 0x4755 +#define SCU_RESET_CONTROL1 (0x04 / 4) +#define SCU_RESET_SDRAM BIT(0) + static bool aspeed_wdt_is_enabled(const AspeedWDTState *s) { return s->regs[WDT_CTRL] & WDT_CTRL_ENABLE; @@ -221,6 +224,13 @@ static void aspeed_wdt_timer_expired(void *dev) { AspeedWDTState *s = ASPEED_WDT(dev); + /* Do not reset on SDRAM controller reset */ + if (s->scu->regs[SCU_RESET_CONTROL1] & SCU_RESET_SDRAM) { + timer_del(s->timer); + s->regs[WDT_CTRL] = 0; + return; + } + qemu_log_mask(CPU_LOG_RESET, "Watchdog timer expired.\n"); watchdog_perform_action(); timer_del(s->timer); @@ -232,6 +242,16 @@ static void aspeed_wdt_realize(DeviceState *dev, Error **errp) { SysBusDevice *sbd = SYS_BUS_DEVICE(dev); AspeedWDTState *s = ASPEED_WDT(dev); + Error *err = NULL; + Object *obj; + + obj = object_property_get_link(OBJECT(dev), "scu", &err); + if (!obj) { + error_propagate(errp, err); + error_prepend(errp, "required link 'scu' not found: "); + return; + } + s->scu = ASPEED_SCU(obj); if (!is_supported_silicon_rev(s->silicon_rev)) { error_setg(errp, "Unknown silicon revision: 0x%" PRIx32, diff --git a/include/hw/watchdog/wdt_aspeed.h b/include/hw/watchdog/wdt_aspeed.h index 7de3e5c224fb..cc734bd7ae7b 100644 --- a/include/hw/watchdog/wdt_aspeed.h +++ b/include/hw/watchdog/wdt_aspeed.h @@ -26,6 +26,7 @@ typedef struct AspeedWDTState { MemoryRegion iomem; uint32_t regs[ASPEED_WDT_REGS_MAX]; + AspeedSCUState *scu; uint32_t pclk_freq; uint32_t silicon_rev; uint32_t ext_pulse_width_mask;