From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.68 as permitted sender) client-ip=209.85.128.68; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f68.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.68 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1603301699; cv=none; d=zohomail.com; s=zohoarc; b=mQGmE+/qKsV8LhTs8DOn6tFLhE0VJbzES2hzuOXiKxyu5LVlevplC+wV5re10TSZyfSfjTKjx1Qc/ITrZyHQ4XJOpR828liVrf59E5w20P0Oi3ghyUtWBDbcYq7dE8J1ECTYHg4hiJMaO6FkHZVPRbXtKBhDyYXxYyIHY4XEvXE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301699; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=KaLHZkyMV310GRpm8xmZb+UEiBALh924PFEJvj8hcI0=; b=L67PcVZm+0EbZ1Df+/osgEVTXbxo8YHXyPQrGersWoyb/qFi+++7+JegbOW0hc6BBKM8Sul/5PV28GeIvKH8kBG4UBadB3bLqp2+sNRxv3RspdvJCJY2KgXnaDAhowWTSD4P6A6UjmfazPJ8bwjDU+fsyXTTv7C341vZU891NDs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.68 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wm1-f68.google.com (mail-wm1-f68.google.com [209.85.128.68]) by mx.zohomail.com with SMTPS id 1603301699108868.8347479299503; Wed, 21 Oct 2020 10:34:59 -0700 (PDT) Received: by mail-wm1-f68.google.com with SMTP id d78so2982143wmd.3 for ; Wed, 21 Oct 2020 10:34:58 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id i126sm4943809wmi.0.2020.10.21.10.34.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:34: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 :mime-version:content-transfer-encoding; bh=KaLHZkyMV310GRpm8xmZb+UEiBALh924PFEJvj8hcI0=; b=XaV+oj0FziPlbSlHvjGjj/aR9lAah6vuPv5eHBR4MN6rZv7zfpiHm2vx/mP43rNEwI 1+kBNefVAQd0K811g6ovqCI6pyeTvgFXD2LTJViPI0pN3nND1P4HXk6JtiEu3FITGYrD DwZdt6EvrJVNTL8E668bQcdg2ZpEGFOqU/L7IsG8rci5vvhG8KZG9O81tJON+X1iVyc9 EgwDd+VLnr6mQ7b1Q/Vh3foY5Y3xn2INIGcLevUwqgjAVLWPjRpQWnGTrrP5miL1M8Nl j62IE/H681F4RI9a+SVPChBtJMfodh65YVwhj6brFTUvtytc4e5zg9SH5DH9ZEpwz0dH eX1A== 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=KaLHZkyMV310GRpm8xmZb+UEiBALh924PFEJvj8hcI0=; b=jNxTETqHIEWK6gPTuLUZXrzqI/kM329OwFgibM8B0RFiRQZ74Ghl/C3WdUaglS5WvV bUfFyQrKLsjr9Skdrplh31ODz3GywOV17tG/xFKe8CBA3HmF5prQ4dKGX3ZTDuGDX73l cPAN871k2wEZYYf8Digi2Qphn4DG2e7+ZJqoCRyju91FvhqZ4XxFy+83zVUzruQFLruR n+tTVfF+8zpW9zo8H5J5atD90IRuEd900t4Wt4bSBEcoCDYAoP+V9fYtmaXpkQjml03y dYJRIvLjGHKkqVc81ajDdCLqRZjLNC9mXlFfrqXV1EwCAO4CLE8YDvQGivX3O8ZVBABD hWIw== X-Gm-Message-State: AOAM532Mvbr2xz+puZ/kq+lliSBp7UKqRJMlY/dZtnUCqyhXPjwcTe9F rx0QcTyERQZf+r/WaTFiVlE= X-Google-Smtp-Source: ABdhPJxC5HhsH3754EGbfk2rd2x1DQd0L3Hh82CY25ufBmUR9ajcWKntZZve+rDuPao2thV9Duq5ZQ== X-Received: by 2002:a1c:9641:: with SMTP id y62mr4823756wmd.145.1603301697230; Wed, 21 Oct 2020 10:34:57 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 01/13] hw/sd/sdhci: Fix qemu_log_mask() format string Date: Wed, 21 Oct 2020 19:34:38 +0200 Message-Id: <20201021173450.2616910-2-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Add missing newline character in qemu_log_mask() format. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Tested-by: Alexander Bulekov Message-Id: <20200901140411.112150-2-f4bug@amsat.org> --- hw/sd/sdhci.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 69002130839..6d4603f5b19 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1112,7 +1112,7 @@ sdhci_write(void *opaque, hwaddr offset, uint64_t val= , unsigned size) /* Limit block size to the maximum buffer size */ if (extract32(s->blksize, 0, 12) > s->buf_maxsz) { qemu_log_mask(LOG_GUEST_ERROR, "%s: Size 0x%x is larger than " - "the maximum buffer 0x%x", __func__, s->blksize, + "the maximum buffer 0x%x\n", __func__, s->blksiz= e, s->buf_maxsz); =20 s->blksize =3D deposit32(s->blksize, 0, 12, s->buf_maxsz); --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.67 as permitted sender) client-ip=209.85.221.67; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f67.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.67 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1603301703; cv=none; d=zohomail.com; s=zohoarc; b=VjVG3A5qe6V5DevtaH9joB5fiEALxXhd9d2ZdzbJHevv0JkK8wR5e60qEFp1h5w63eW2h1B/JguXcTQaVKtOZT+Ib7ZOhMkgSLUBzDnmC2Vv1nTbB3KkYq+7I4JqcHi0QNjG0MqyLfX4THb2+JM7Fg5PzyJyutQHmH8zRTPLKzo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301703; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=stHBs8t1SdzbGJ1mjGKIp/i5L6krBUedXaMQsIqK+Xk=; b=ebJ7PeV5bpz3t/b10uQanfp9pscgGKUrt6dIi6gnp1QoqRDE4qtlkwH9siNvglmztXH8PDynC6RV2Ttz7pIQ1PRdlFvmbCOIDKd0HaULM16eA0Nx6QaJwXFx+76volho9uJjTZTbE9GAaAGiYKE5xwSJEThAePWO2ZMxQ37oxXo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.67 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f67.google.com (mail-wr1-f67.google.com [209.85.221.67]) by mx.zohomail.com with SMTPS id 1603301703725455.82429196920395; Wed, 21 Oct 2020 10:35:03 -0700 (PDT) Received: by mail-wr1-f67.google.com with SMTP id g12so3955088wrp.10 for ; Wed, 21 Oct 2020 10:35:03 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id u15sm4411740wml.21.2020.10.21.10.35.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35:01 -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=stHBs8t1SdzbGJ1mjGKIp/i5L6krBUedXaMQsIqK+Xk=; b=CZlfdIDVWJE+WicDutKs0fe97832DbicIN5v0uHVioOSSxbYs7Hc+Rle1EnDruFM4A TrdAktW48y08obRLppBLHpPM0k6MhK2PR48Cd3WK0PzRdDQocH7YAUr3hJMbVKKRzCZj WfCHQYMyfWmzsczlRmud92PQBloWA3wlwGKqqSBbOrcUhYjs8ZkHZl5XW1g441pWFIrj GHNHpx2qlUkbQivQ6bjEvg+BGJmNA5s8B2afH//9aD03U3UgvUsW9QJReSeKvEicwyK3 v5UYUk8O2YRA5Z1bzUlMNU3DuZdVv0G2Wdlq1F847WzU/94VolcBlqEeVBeY4JYNYYrj J61Q== 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=stHBs8t1SdzbGJ1mjGKIp/i5L6krBUedXaMQsIqK+Xk=; b=YBKbWDm73r3gaCA9VDqkFwyi1LmkweN5EeU/bKwWy0MaMVK7p1mO5q9skC2lN456NJ jMvcmQlhdiX8WW0znlKMjhdml6skh/4gb0pBgrZwScNm8YAvGJtgBekeBs1aYBpslxa6 foeQYEgtC6KklRHi+Mm3FmIC9ShHRwBtuhzATEDuOXDH63DK4/NSUIRjfvesa8mk5tHj cPz6Nq9Ka+JYh7fYaSxeOIJsj4ePfHbvO1R2/d9U4/UU0HY77tIqjDErvX0Uld688KIG oOha+bSw4n928+9z7V7tSC2d5heYdohswAAxmjKahMymkLxtDfRff2JuZ7jFl9QPlJLU RJng== X-Gm-Message-State: AOAM532TPaSa5eaUeTQOjQr1xYdR+1ksIWHqbCNLfl8eSwVc21HLFfEN 2uISDkNmTxwl02kz6qaqlk8= X-Google-Smtp-Source: ABdhPJxYq64l9aFQQCwVRNijMNgW76q9BdpDf96cjI9Mxf2A0X7HxcaV+PivV7veNtOE2r/lpOkUFw== X-Received: by 2002:adf:9c19:: with SMTP id f25mr5981425wrc.366.1603301701831; Wed, 21 Oct 2020 10:35:01 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 02/13] hw/sd/sdhci: Document the datasheet used Date: Wed, 21 Oct 2020 19:34:39 +0200 Message-Id: <20201021173450.2616910-3-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Add datasheet name in the file header. We can not add the direct download link since there is a disclaimers to agree first on the SD Association website (www.sdcard.org). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Tested-by: Alexander Bulekov Message-Id: <20200901140411.112150-3-f4bug@amsat.org> --- hw/sd/sdhci.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 6d4603f5b19..ed717ab549b 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1,6 +1,8 @@ /* * SD Association Host Standard Specification v2.0 controller emulation * + * Datasheet: PartA2_SD_Host_Controller_Simplified_Specification_Ver2.00.p= df + * * Copyright (c) 2011 Samsung Electronics Co., Ltd. * Mitsyanko Igor * Peter A.G. Crosthwaite --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.45 as permitted sender) client-ip=209.85.128.45; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f45.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.45 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1603301708; cv=none; d=zohomail.com; s=zohoarc; b=gWHIwwG2b7I2TQ9rJm6+YjNfnPKSKlwk+gjZjHJA9hCe5jnNnlCjrFMooHtyPiSyqoFRWEKn22UjyfYgcVB2dsl0D7EnPcoFZHaqAB790ni7ACWI8VWHI4SP4BLS2sbxWhurA/Cf9zduCZfjEUtqEfqs46T9+jXeCJWjTnlJZ8g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301708; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=5sS64GiSnmfXDwPIZCoMSvNhCEcsO6wIvPcArhV3+yo=; b=nV9A99QWh8wcEjrPOO3SigEs7nSJbX242L2y9j3A2k4unA6Bcq5RQjgdTh5IWOB7/scLMBX+JbS8lMcsqFnOhotG6ulNucTqZikuhFSyLAr/fXKvImM86vRfF8yOCa0fRs4bxvOsh/jtSKQ7z2zMDvbk5m2isC+2lV6bAjj4Y0w= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.45 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) by mx.zohomail.com with SMTPS id 1603301708710610.1791629636394; Wed, 21 Oct 2020 10:35:08 -0700 (PDT) Received: by mail-wm1-f45.google.com with SMTP id q5so3460411wmq.0 for ; Wed, 21 Oct 2020 10:35:08 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id k6sm4770610wmk.16.2020.10.21.10.35.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35:06 -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=5sS64GiSnmfXDwPIZCoMSvNhCEcsO6wIvPcArhV3+yo=; b=qqOIURXFloBEn82NoV8gQANlT9mqefCoMan0WiMmhQHNdPP0hGC6hLI7iPr3eV1HJV vczs4pQOxNgUUJJzMcCiK7BqLhv+5nWfXV9mw92A8wHX4pbOkJGTsqAw/4feQl4jwOJv IiwLdB8oZJSy09i+Px6Qmmi8cMVxw4sYmFeLJGcUg1xMFkRWaatDVwoKOaHymeh4zk2R i6Wmnc/XnidT0HCk+0LJUetrf6TIuJFjZtMCDaBskkx4DT7ikhoRQTGC0arPiTb/oU+w 1amfTjJ17V2L0SyyOah34UcZL/kSMCxl4WP1u0l7zzTE5P97jb3TZkN+YtksIlw9w6Gs rNWA== 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=5sS64GiSnmfXDwPIZCoMSvNhCEcsO6wIvPcArhV3+yo=; b=uBf8b033GaRrtyXgdG631LxksRDJLgt6EG/2VkLFmpryWYz4rqnmZH0KJmxJnYqANk TYuYPzJKveS28BZohoA4a9FT9QdxU+d+MJOLegXk913pkIPBR4T7nBdevTHlNeYm6GpC 1eTxmapP77ItFC3PkufDm+rjKsjWRd9J9PhxPtyz48mkrKtE9S65B3qbour6orqoBQmb 0g5uF7pAWoMHLS93m5DmjyXE3Nckhz04QYGdkXvsdgITTTG192U8ETxE8xU9vCXPTq6f VDjC01tnMO40wkmjPCmM5P6lZ5p/izsvfJoE6YRGQNTJLqSnq2GZH6G7cWZqTen0Ny3K qIhw== X-Gm-Message-State: AOAM5333fYnG/8NNWrdyQJaUG9oZAZln5IXD8LJuv5v3z/mwyd0CBj1c /b/mMPzovioVJXiIQuxwB2Vc3OMUJfY= X-Google-Smtp-Source: ABdhPJxELr3Os9sKHjCQIcYuZ2miiyJBdHWWbX0zykRyqwVxoDhrxTd+WhoTaGUjIMdkcz02f1Greg== X-Received: by 2002:a1c:4c05:: with SMTP id z5mr4666672wmf.122.1603301706778; Wed, 21 Oct 2020 10:35:06 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-stable@nongnu.org, Prasad J Pandit Subject: [PULL 03/13] hw/sd/sdhci: Fix DMA Transfer Block Size field Date: Wed, 21 Oct 2020 19:34:40 +0200 Message-Id: <20201021173450.2616910-4-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) The 'Transfer Block Size' field is 12-bit wide. See section '2.2.2. Block Size Register (Offset 004h)' in datasheet. Two different bug reproducer available: - https://bugs.launchpad.net/qemu/+bug/1892960 - https://ruhr-uni-bochum.sciebo.de/s/NNWP2GfwzYKeKwE?path=3D%2Fsdhci_oob_w= rite1 Cc: qemu-stable@nongnu.org Buglink: https://bugs.launchpad.net/qemu/+bug/1892960 Fixes: d7dfca0807a ("hw/sdhci: introduce standard SD host controller") Reported-by: Alexander Bulekov Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Prasad J Pandit Tested-by: Alexander Bulekov Message-Id: <20200901140411.112150-3-f4bug@amsat.org> --- hw/sd/sdhci.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index ed717ab549b..c849c3d99b8 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1107,7 +1107,7 @@ sdhci_write(void *opaque, hwaddr offset, uint64_t val= , unsigned size) break; case SDHC_BLKSIZE: if (!TRANSFERRING_DATA(s->prnsts)) { - MASKED_WRITE(s->blksize, mask, value); + MASKED_WRITE(s->blksize, mask, extract32(value, 0, 12)); MASKED_WRITE(s->blkcnt, mask >> 16, value >> 16); } =20 --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) client-ip=209.85.128.47; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f47.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1603301713; cv=none; d=zohomail.com; s=zohoarc; b=RbZStbTmPrakXUXos08QBnt4VtZTPCqevHNQmwS/TUpqD99qLe1POCHbroX6wminl5/P8vqOLGPHSMqw+HJ9G0+6tIzu+bNrPuAhWPm6GSh9A+3ZgZuCBk/vpTqrC+XxOVUI1t01+TOyGEnk4dPS9A/GMosqshtG2tefMNLC3GE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301713; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=qenmuCcnJ1D62WnJyuSqdVB8Tn5y6BCbZljNKEVfJGQ=; b=Yv43xsfnZf4dbQRWfJ+xgOEB3Af62Xp9Yw6DUpjLwP7VS3Ef+gJcA+fFgBX3i1fYBFifV/cTeDbJhVLz2e7rkzqTsmxMAKQsBxbCJTgVeESlzeuW6KTvxTOMZqtbVUU+djCa2jt7eik5wdMrXDU73G06GbHJZLJ+l0am1gHzEZ8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) by mx.zohomail.com with SMTPS id 1603301713419495.2253351640486; Wed, 21 Oct 2020 10:35:13 -0700 (PDT) Received: by mail-wm1-f47.google.com with SMTP id 13so2987899wmf.0 for ; Wed, 21 Oct 2020 10:35:12 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id s2sm4900028wmf.45.2020.10.21.10.35.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35:10 -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=qenmuCcnJ1D62WnJyuSqdVB8Tn5y6BCbZljNKEVfJGQ=; b=jfGUQlnEjIHR8AoZTx+A5arMjqBjO1NEUwl7ZOOotDGbIAoakyVz/IRSAjVTIam89A SP7ihZ7r4XTXJn4bZehNFVG3loQlfMRrE41PHzrF79xmmoZUdXUZcz0vMnyTNhFxVK2D 12izHK73q7xFqaBiN0VIWIkNQuFMD9ileL52I0kvtAgymROxPBLie39iA+ehu3ig54LO AmbqpAasvPAYb1/H/PCINvpW6lHSLbWz8sLpgKni0HV/TK90iRA5eS2GBGHJxpwXOHgj gR7x9aV/96BuM/RlE6lFz2wV5ZfpNJRJCGstSiaOMpRyOb/ug5H96n2I/H/Uz3Uw+CF0 A6jQ== 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=qenmuCcnJ1D62WnJyuSqdVB8Tn5y6BCbZljNKEVfJGQ=; b=D+5JW0cr7Nd+Nr5Pn4g6jY7a8vUJkeTdDgkDsvD/ddFHLk9rEGBwMQzKLPPBr3GEj0 /XT1EyB05la+5yUeHez751f1VtLhnXwwYKt3VFgt6VFoo/ubbQwAIU0cFuPbwLHmqmG8 dgad7aX/o+N1bP1MBVL2mF7BrGa2nlRCYzXMUq9XZ0Ys7d+655q20hfFuKDumnToFBMG 3PeueCCv/w8ZzMj9wj7l/YZz2J8XDo8v5VmEw5DZlKiPR588j2PXp6377vIyDK4NPSIF hOdUa6zHMu0EPluSifbFfNO/o4u0AjUVx5J9yDev3xbbnFgEKTIDFAbfQB1TkdVJkCJZ Ut8w== X-Gm-Message-State: AOAM532F5jDTCBTjWzHI/76eSoWOS2VMwFBMmpSetU3VrjIJ8NO2+Vhe tucS9ML9EtZuzF6/TQms9ao= X-Google-Smtp-Source: ABdhPJxS5ezFrvPd0MHkWnh8QXM41bcr50V0Qz4hiz21TfvGE4xSkp4NZl5kFe+Gr38JitOK2YANAg== X-Received: by 2002:a1c:8057:: with SMTP id b84mr4679185wmd.116.1603301711436; Wed, 21 Oct 2020 10:35:11 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 04/13] hw/sd/sdhci: Stop multiple transfers when block count is cleared Date: Wed, 21 Oct 2020 19:34:41 +0200 Message-Id: <20201021173450.2616910-5-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Clearing BlockCount stops multiple transfers. See "SD Host Controller Simplified Specification Version 2.00": - 2.2.3. Block Count Register (Offset 006h) - Table 2-8 : Determination of Transfer Type Signed-off-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Alexander Bulekov Message-Id: <20200903172806.489710-2-f4bug@amsat.org> --- hw/sd/sdhci.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index c849c3d99b8..61e469bd32f 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -731,6 +731,12 @@ static void sdhci_do_adma(SDHCIState *s) ADMADescr dscr =3D {}; int i; =20 + if (s->trnmod & SDHC_TRNS_BLK_CNT_EN && !s->blkcnt) { + /* Stop Multiple Transfer */ + sdhci_end_transfer(s); + return; + } + for (i =3D 0; i < SDHC_ADMA_DESCS_PER_DELAY; ++i) { s->admaerr &=3D ~SDHC_ADMAERR_LENGTH_MISMATCH; =20 @@ -756,7 +762,6 @@ static void sdhci_do_adma(SDHCIState *s) =20 switch (dscr.attr & SDHC_ADMA_ATTR_ACT_MASK) { case SDHC_ADMA_ATTR_ACT_TRAN: /* data transfer */ - if (s->trnmod & SDHC_TRNS_READ) { while (length) { if (s->data_count =3D=3D 0) { --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) client-ip=209.85.221.49; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f49.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1603301717; cv=none; d=zohomail.com; s=zohoarc; b=mKwu76/g+qFAozAfO8eD4+mbKt3qlQjGbnYmnhVD7ICYMRhGVtfBj++DKGt9uRN6cIPnwOuc7esXzSKcuhr+xF9B6lLofhJygquKmLoJ7d/bcOxbM15w0iphO87uErMbQG5CqBPNZBkuapkFUIzXHMbEiB+XBH/O/7726wMrNZ8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301717; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=/ytGsokUFsJElQ21X2X5EL4wzQhSW3vyhSdpuBM3Iy0=; b=RB8xqAhRsrvjaGvURA/zJSe6H8sY8WKV8qcatlo/M76epw2DU8RP+fxj42xugsBvbF34X63W0XDkdUsCV6IAnVZjSbyVSFlD4Ll7QWhVjNDz2ufJzK5KoHyDRowntR/TxET2XXiiPMAgVUqSdIMqZGuP+MGGbZ3WAQfb8lLpf0s= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.49]) by mx.zohomail.com with SMTPS id 1603301717871420.9336095119613; Wed, 21 Oct 2020 10:35:17 -0700 (PDT) Received: by mail-wr1-f49.google.com with SMTP id y12so4005355wrp.6 for ; Wed, 21 Oct 2020 10:35:17 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id b63sm4643367wme.9.2020.10.21.10.35.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35:15 -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=/ytGsokUFsJElQ21X2X5EL4wzQhSW3vyhSdpuBM3Iy0=; b=nbqb3u28VHRphmKZEzSFjsdEdoWb6g510uG/iCvddSmNhxu0cAi71HdNQtp486yHFg 6Wj7B5GJrJTFwn9RAIVi1ymprnLRIAYv1T4bqrAwRv1UqcxZgAG21dUxvtQ8oweWAfnP YKAk6NjgNzWn6ZR9gp/YwYtB2O35FLeMkW+DCgBX7FrKPtOSLR7+Kjn93ZNNHYIURQ2g tW61TFHYTGy1K7Z8A0Wk+7xtDgedGmVR/mtLAZ4dAhFi2ETCYSGJeDBNK61qiA5wqo1+ yffuZeUumRsDjez4FOitRw8p+RmOC2MwJKecNK+NtZajJEHZvY/O1aRblFJ+Wvdabrfl jNBg== 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=/ytGsokUFsJElQ21X2X5EL4wzQhSW3vyhSdpuBM3Iy0=; b=mIu9BaDwa4SgewxaPNikc1UorgbcGfhDXRrPtOT/UZkrYCgSYNaf6e8ps3t0Y3aXg6 ASONjBaBOFNuO/Aa+jYLUmk+FIRgaIEuf4LtiwlK6LNNE9DITeIwsudZGen6VbyYRYP7 iI02ByyX7aqjBGRXDXU47qHKJbLqzDQPW2ZV7vuGE6n15iidjeFI0XUFsLQSvhF+sHw2 1AciVvMq8ApbhEs5iMv3qhM1b56oQ5cp3Zt0INVsO7n6OULcIaiQtpfiV2Rur9sS7l0T IwwjCDfKaNU0mdI0ieNyWdh9am4+Icl0oQnpVOoLLhBOhKNO7gzDTaTkZog9veEF02gU gPCw== X-Gm-Message-State: AOAM531FwJeBo/hxMRp48t9og2bkcWt2/dAdQvxw442Q0IgxWLR4zCdK Cm9Ey5VeUxyTclRFtkxc/5c= X-Google-Smtp-Source: ABdhPJw3Ykui0kKbtPN1zUJZUG2Lfz3PHxhrCmEw/cYAMRh3lABSC4TWJVB9VWK/qq2adF9/6VbPcA== X-Received: by 2002:adf:f810:: with SMTP id s16mr5758443wrp.424.1603301716086; Wed, 21 Oct 2020 10:35:16 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 05/13] hw/sd/sdhci: Resume pending DMA transfers on MMIO accesses Date: Wed, 21 Oct 2020 19:34:42 +0200 Message-Id: <20201021173450.2616910-6-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) If we have pending DMA requests scheduled, process them first. So far we don't need to implement a bottom half to process them. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Alexander Bulekov Message-Id: <20200903172806.489710-3-f4bug@amsat.org> --- hw/sd/sdhci.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 61e469bd32f..4db77decf87 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -948,11 +948,21 @@ sdhci_buff_access_is_sequential(SDHCIState *s, unsign= ed byte_num) return true; } =20 +static void sdhci_resume_pending_transfer(SDHCIState *s) +{ + timer_del(s->transfer_timer); + sdhci_data_transfer(s); +} + static uint64_t sdhci_read(void *opaque, hwaddr offset, unsigned size) { SDHCIState *s =3D (SDHCIState *)opaque; uint32_t ret =3D 0; =20 + if (timer_pending(s->transfer_timer)) { + sdhci_resume_pending_transfer(s); + } + switch (offset & ~0x3) { case SDHC_SYSAD: ret =3D s->sdmasysad; @@ -1096,6 +1106,10 @@ sdhci_write(void *opaque, hwaddr offset, uint64_t va= l, unsigned size) uint32_t value =3D val; value <<=3D shift; =20 + if (timer_pending(s->transfer_timer)) { + sdhci_resume_pending_transfer(s); + } + switch (offset & ~0x3) { case SDHC_SYSAD: s->sdmasysad =3D (s->sdmasysad & mask) | value; --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.52 as permitted sender) client-ip=209.85.128.52; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f52.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1603301722; cv=none; d=zohomail.com; s=zohoarc; b=JZC9x4DGRmyGB/CPcqdW1/Kogo4xnYwuaGpqdeFUdl11BtNKEcmYBHa3UYObvAPuOs8fvLfEE84SLSuCdASSApp9LzEFhE7QKU5br93jCKWrVoVXH43oGNXJAJIoUApoDGDw+v3eQvz0jh2hppHdjgg4jTr2q2t46/gNRol1yiE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301722; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=NoDwWHinBIKIuPIX7ZFYNJrNUHL9vQFLXTimhcq4kjQ=; b=Xt4lnv0O/1/waGk8rh+QxUwudeze34HRsVhH2KDtv4CsZNJEaa2frTSkSPTWhfYfrKqde6YFbr7AQGqhVdnu0MNIfy5yiS5pf5wBvPvR5+TzbtBRDbV1hhf21bEfcH9PRfB3um2tlmq2SkWGmN+kfay5EuWxIwhSnj31WkNB61Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) by mx.zohomail.com with SMTPS id 1603301722571146.74151083532; Wed, 21 Oct 2020 10:35:22 -0700 (PDT) Received: by mail-wm1-f52.google.com with SMTP id c194so2999142wme.2 for ; Wed, 21 Oct 2020 10:35:21 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id b7sm5101971wrp.16.2020.10.21.10.35.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35: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 :mime-version:content-transfer-encoding; bh=NoDwWHinBIKIuPIX7ZFYNJrNUHL9vQFLXTimhcq4kjQ=; b=eABs6x0ckYBmbr2/3W50NFaxR//eZ8uRR1aTJoOcp4sbfqePoMQVs5vxzTxpKjAA+A 4ZpYwm0o9ggJLVZAOmYjIlGYc0c8Z8cKl3FyuV4PE6XgvVbsYZlZ8UgUJtOdGpiso2TS 62VxDPlgduVHVEPO7g8N1GDGcuVzWah+4xOfwVNXuUhHMLehfk5tTOnBvGjfSshnGDBi pTq16nUI8YU5DoZRTNRa6JoxxkFndcyWTzoz8GJ6Bqp7NudLKqb62TO/sACbC7ZjYDUr WbnOc/9/gjzuYXPhmWbEAluCLUmWceLY2R+i+xBaVfkm8JKfit4tnaEu8TLn1jyw0tz5 pidQ== 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=NoDwWHinBIKIuPIX7ZFYNJrNUHL9vQFLXTimhcq4kjQ=; b=H7fOak7hWzwoN75iql9+a2P1XMJ/9jNCSUn6PhBUejTYwQkLwliPbkqL8QSvr8/RMP CBUO6qhDS/89kvtJxm+xKgKIna18y59LFMkPC4x5dB40BeSQtRER/ohvEdWImCGScoQ4 /2eScosqga1H/FRMgcHvYhLs4ri1YWwtUrXV6+mLuhI/JcxUwczfM4pxTK1v0R+WCG+K 1r9O7+/LuyQ2VozhchXzeET5ecyOOYuOaNPgEEaPpvsB/MPY7KfrBeoE+ew/LXrkpOuF RK+nofAu41ABhoswBgNzJwQicRfNnwydG5vrOymAJHVJLaWmHElv9ey6CxLZcbYXIEc5 sKDQ== X-Gm-Message-State: AOAM530IE4ofPTRj/RbaB2av9vKs0WeXgUMZxRVcbiwl3KjpJgkRYPd3 loCntjPXkb1qJcIst+xFngI= X-Google-Smtp-Source: ABdhPJwLQIJqc+ZE4gBsTy/pCChmQBUWALD1zNHXGavM6wG4C/6wgeCukFTprryZmUyK1sRUsxCKyQ== X-Received: by 2002:a1c:2803:: with SMTP id o3mr4162007wmo.97.1603301720651; Wed, 21 Oct 2020 10:35:20 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 06/13] hw/sd/sdhci: Let sdhci_update_irq() return if IRQ was delivered Date: Wed, 21 Oct 2020 19:34:43 +0200 Message-Id: <20201021173450.2616910-7-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Signed-off-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Alexander Bulekov Message-Id: <20200903172806.489710-4-f4bug@amsat.org> --- hw/sd/sdhci.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 4db77decf87..b93ecefd20c 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -218,9 +218,14 @@ static uint8_t sdhci_slotint(SDHCIState *s) ((s->norintsts & SDHC_NIS_REMOVE) && (s->wakcon & SDHC_WKUP_ON_RM= V)); } =20 -static inline void sdhci_update_irq(SDHCIState *s) +/* Return true if IRQ was pending and delivered */ +static bool sdhci_update_irq(SDHCIState *s) { - qemu_set_irq(s->irq, sdhci_slotint(s)); + bool pending =3D sdhci_slotint(s); + + qemu_set_irq(s->irq, pending); + + return pending; } =20 static void sdhci_raise_insertion_irq(void *opaque) --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) client-ip=209.85.221.49; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f49.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1603301729; cv=none; d=zohomail.com; s=zohoarc; b=XpYFvk/E1AU+xTaXScjYP4KZvSrzhyqq5qeY9tA0busVfHsDhObXQSwtuRix7aBZHKAAs7qb8dSN0WQwo6iLfe0zDIx8wcVaOrBCo8r4bmrZ3OLIaB8dmgpknEojFParaS/uiiv+tgiT6nASS9q8l0yoeS1WD+zOrdTdTJKnu1I= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301729; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=1T44dRrHJFyTG6J3zUPzNWduAlmSBzN4WxwodQQd2DE=; b=Wq4aR5ddqn49DItLJT4AWK5c9CP841UFktdiMDpDuatDgYmQMdN1vAVSKuNKuLTTCugej47B25d0lSJTw/R/ToeO5Fnt7ttIvIT2POKMNLX2VW3S1z035wuw9/msIsC0i9+U6+zlIZt7ubJVapLKc3djg9TgBYFhldk3ujqjLto= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.49]) by mx.zohomail.com with SMTPS id 1603301729188753.3215300008851; Wed, 21 Oct 2020 10:35:29 -0700 (PDT) Received: by mail-wr1-f49.google.com with SMTP id n18so4023562wrs.5 for ; Wed, 21 Oct 2020 10:35:26 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id s5sm4320261wmc.3.2020.10.21.10.35.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35:24 -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=1T44dRrHJFyTG6J3zUPzNWduAlmSBzN4WxwodQQd2DE=; b=vDcf6gZu0N7BOib+GMVdXn2IJ+yMN7KzNJyEZt8IbpLlR0mqm1pLlyHuEcmULWLQ1R pLeUa5zPK0MtS83JrcwSA1MeBzbBY62lzHueHhozsZtyrhWATjOzP7pdEXVxUnx44vgc RHPALfbJYmNuq+AwmpE0zEFDV6vg/MnOB4F/iJ1WPzuu8RLaQTot8Ml84Zuf7YsS5PeH f/5fogY7GUshEdB5mLXk/EDav3YGluzZF4UUCzwxNFUHc97NesLIlafy9DEyOWvTir6N YwqJb2pdzSCxZHnnfdLiDd6NE/oON580qMYNa4PVOGyPZGSfdLssqMMdxlxDcYwe+hIY u8Xg== 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=1T44dRrHJFyTG6J3zUPzNWduAlmSBzN4WxwodQQd2DE=; b=QAUU5JOK3QzReTKaYCNkvE2PCyReczA7yv+QAkosfH29oL5hKvee4kx3WZbyzx6wSi 6uiVjAL9lRt8n8BbjoJNqkEZJ8dXwvZtRvv8tT8/3wAFuCzf72+g7VRj5VDPbAc17Z4H f1pNf0qE+xOz8VX4VO5paMY7RqS30ASAIVfSqbVFBwUtnS8ItttWeWqJx8XT5s2YUg1s JTcd+Io0L78CkOaEK0R9Pu0rIxXem291/rVCO/1FbAn3QIOixReC9W24fLXI4hkxyqee SzhBpNjykQdcsCW72Qn4nx6sEVWT29T0mmKbi83DyJf7DNx1/ri7HUsZaCDxr1wrrbeB A+dg== X-Gm-Message-State: AOAM533/Gxb/mUfq/wZPjH7NQi0jxKvNkklNICNdvI6AuuN6t6cxnTLw wxf3hsRMXTOD5nGQKjpj78o= X-Google-Smtp-Source: ABdhPJxsvOAD4Sg/dhZO+BQpjrfn3YX1tqt3EiPn72WcpBB/de83OEXxGzxoJmuosXE+Jv5PQR4SDQ== X-Received: by 2002:adf:9069:: with SMTP id h96mr6289680wrh.358.1603301725217; Wed, 21 Oct 2020 10:35:25 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 07/13] hw/sd/sdhci: Yield if interrupt delivered during multiple transfer Date: Wed, 21 Oct 2020 19:34:44 +0200 Message-Id: <20201021173450.2616910-8-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) The Descriptor Table has a bit to allow the DMA to generates Interrupt when the operation of the descriptor line is completed (see "1.13.4. Descriptor Table" of 'SD Host Controller Simplified Specification Version 2.00'). If we have pending interrupt and the descriptor requires it to be generated as soon as it is completed, reschedule pending transfers and yield to the CPU. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Alexander Bulekov Message-Id: <20200903172806.489710-5-f4bug@amsat.org> --- hw/sd/sdhci.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index b93ecefd20c..2f8b74a84f7 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -837,7 +837,10 @@ static void sdhci_do_adma(SDHCIState *s) s->norintsts |=3D SDHC_NIS_DMA; } =20 - sdhci_update_irq(s); + if (sdhci_update_irq(s) && !(dscr.attr & SDHC_ADMA_ATTR_END)) { + /* IRQ delivered, reschedule current transfer */ + break; + } } =20 /* ADMA transfer terminates if blkcnt =3D=3D 0 or by END attribute= */ --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) client-ip=209.85.128.54; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f54.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1603301731; cv=none; d=zohomail.com; s=zohoarc; b=QimspIK4W+WExHyG7DXE5A3RfSXrWI14qpXXxZxQcniV+JEZxMWsyen7k/5XsEyBqpDKe/dn57xkdszR6SnzqlxaMJjawkuKDb/IUSsoS4S7fTHudFQ/BG/7zp07MxwWKOPcJv/qCngH53b5KpezmvSs0NevbxhXnQahQarcZhI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301731; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=W5cNhnlAua+FOcK+awIb+jUgiTp6wkKIcsuybacXu04=; b=YKtXxi2j7/33S+QMK93oH06uMGrZBRBGv90Lp4LWzM0RqshdBkw8PLemubvrD70zz2GMA1gSosWbA32OJyIFOITz5a0DgJM52WcBZpRDye4Rmjn3ylsLVAUc9wisSL3zYTDdUvxuQ/SGpqquvQtXvTOK7MiD5gKm9g+IFDdK6bE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) by mx.zohomail.com with SMTPS id 1603301731481944.5295714930546; Wed, 21 Oct 2020 10:35:31 -0700 (PDT) Received: by mail-wm1-f54.google.com with SMTP id e2so3472139wme.1 for ; Wed, 21 Oct 2020 10:35:30 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id d129sm4719627wmd.5.2020.10.21.10.35.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35:29 -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=W5cNhnlAua+FOcK+awIb+jUgiTp6wkKIcsuybacXu04=; b=uuQl3lsG6QEoeL871Ku7B2hgq+rS8wCFkbhrhZiPMVZzvNv2ik3yLV/g/DwtBFYJVh J8/jaLeMX98KAb7+d6uS+U7KfikqP5JljWzzY1iIxE6x1RHj4mg5kMYIT/62Ems8r+Kc rVjfH0qkzGSSeu19Rqq8Xr4ofqLNyMf6xsgt5sfnwT+PHKvqaqH+67ttvurBq7agxyi2 PGOZY2jLqY8HCXuHkU6evHwREcD3qjkZDpkH2wAwyeljGNNyJ2Nr/13VdGaQuBOBhl0x DxeGjg0omDFiKLoFFHBF8mwRnOMxCg0AmD+OIcvioOKjcNOzbgz/q0yDbBLHF6mChkd6 878w== 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=W5cNhnlAua+FOcK+awIb+jUgiTp6wkKIcsuybacXu04=; b=bZCjSDdAwl+95zXjcFzWydh5cjiGEnvtK1vpNF5lWALH4F2d5FNBESgcO2uSAh1QlY WGkwNmZDJU+QywYbXlMUmVmsVU/xClCjQ3o1ioqMuzkfbIIIKeV0FzDemh+VhkDG0TQU p6n+lXcCryDLmbcwYuz0YSwY3N9MjzW76qBaS8/0+I+UrF4FrnAlyud+MckmGVnbiZqm 2stteVgzQ+JgPIFW/RfIxkHwPlfbMPNhiD/1oANODxPGboWYTeESpxIRs/zlmTAgVygM tcwlkyx3W4aFt+ohmL0W8f+rUiq0FGSb+86C+3OKrEnY/obU+5eAWaOMubN3kPMJ2Kt8 wQxw== X-Gm-Message-State: AOAM530a6QloIqHg9OIwVGHPWeRZiUQIMTezqzWBDNlVtC8xVtj+ftuT B//7Jp8Oplnu56HGKkKRdzI= X-Google-Smtp-Source: ABdhPJxqB4H7EHrnxUhjd98VCfoocJJcFw13ayFKIk/phEUEE4OjLvC4e0hCiTw01XWOsZxFipWkfg== X-Received: by 2002:a1c:2042:: with SMTP id g63mr4539960wmg.174.1603301729666; Wed, 21 Oct 2020 10:35:29 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 08/13] hw/sd/sdcard: Add trace event for ERASE command (CMD38) Date: Wed, 21 Oct 2020 19:34:45 +0200 Message-Id: <20201021173450.2616910-9-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Trace addresses provided to the ERASE command. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Alexander Bulekov Message-Id: <20201015063824.212980-2-f4bug@amsat.org> --- hw/sd/sd.c | 2 +- hw/sd/trace-events | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 00128822224..2606b969e34 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -749,7 +749,7 @@ static void sd_erase(SDState *sd) uint64_t erase_start =3D sd->erase_start; uint64_t erase_end =3D sd->erase_end; =20 - trace_sdcard_erase(); + trace_sdcard_erase(sd->erase_start, sd->erase_end); if (!sd->erase_start || !sd->erase_end) { sd->card_status |=3D ERASE_SEQ_ERROR; return; diff --git a/hw/sd/trace-events b/hw/sd/trace-events index a87d7355fb8..96c7ea5e52f 100644 --- a/hw/sd/trace-events +++ b/hw/sd/trace-events @@ -46,7 +46,7 @@ sdcard_reset(void) "" sdcard_set_blocklen(uint16_t length) "0x%03x" sdcard_inserted(bool readonly) "read_only: %u" sdcard_ejected(void) "" -sdcard_erase(void) "" +sdcard_erase(uint32_t first, uint32_t last) "addr first 0x%" PRIx32" last = 0x%" PRIx32 sdcard_lock(void) "" sdcard_unlock(void) "" sdcard_read_block(uint64_t addr, uint32_t len) "addr 0x%" PRIx64 " size 0x= %x" --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) client-ip=209.85.128.47; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f47.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1603301735; cv=none; d=zohomail.com; s=zohoarc; b=SC8YPWPasoDFI4Elb4rqt9oYC0LMeWzxXbOg5Ce9ipekLQ0YrgvNumOXVwU6OMCcOBDOvCVNwjicCDUMbZzw/SDIJzjfCG0ekwCbRt9qhSqJx8AqrGL1v+DjdMklFLUPmL31bGI8Hk0ENTK0OxKm3R1g4wdpTkptNPtY24XTX1A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301735; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=fzUN3m5jQNygQt0awS2eaBT0Cdsnit89rpHTEPVkwn0=; b=Hf60vFWU72ts2ivip3UkMV+xKz7f0xPI54bsaNMiBC7/4WzGIWWENLWgMIKK2mSOpgtBD8rHp3TP7JMd+Cch16x0R8RPx2Kz0UBrbQbDn3tD/s0xeZ+kqHi2IdjAOqIBYFFV9NclyTl2xbOWA1YA/iZt0suKpMgIn6bATQ3J8hM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) by mx.zohomail.com with SMTPS id 160330173581591.76958698824376; Wed, 21 Oct 2020 10:35:35 -0700 (PDT) Received: by mail-wm1-f47.google.com with SMTP id q5so3461814wmq.0 for ; Wed, 21 Oct 2020 10:35:35 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id b25sm4412857wmj.21.2020.10.21.10.35.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35:33 -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=fzUN3m5jQNygQt0awS2eaBT0Cdsnit89rpHTEPVkwn0=; b=oNEXywAiA1XRgqBTjH8uT0rQFi1YQhY+FOxcCAMDWa5wYVZk6ZxPr/f6wd5eulNCII 74fg99kDITdU3+Jt+nMBKL88dyz6jl0nrVYH1x5CGjktBYX1phb1kwG5pa1hV6EPvYBi ZScXuRyHcp8zPk2vWaKpT2WpcL/1xDZ/l5Nh7cB6OpZETUwJ2VWSnztSM4kgr7KnU9Im 2vgfsI+OFzBQJdTQ/OF08iR/ZsegiOnGMfcC4wFbJmi6Av2BgU4XP5b8hn73Sd1lIAJn 602MJJ4S1l/xPDEjpBtjvve+ioJcx60r6rXM2wYKIa9IdR2420YSYGoeVxowiA0Vgafo +80g== 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=fzUN3m5jQNygQt0awS2eaBT0Cdsnit89rpHTEPVkwn0=; b=JWta/cVBaKXWVvIeTNZMPkA0skJd4e5qArUDYeIN+ruZEOPsuX4OxzCj83vF2UTXTc o81pA2+uRUAg2fciHY2dTVXAyUIAOc1Rj8rhf0r0yt8BPI/3XvzWIpdBGzPnxdLb4u6r lbx94IyRBi42nGfL3GnrC4Vn0k2IQqVAjh5hB3XRuuC9Frvr84W5D3s1+KFArRIjlyD9 sxwu1NyC4aU68vrpQTRZjA8WHH/5JOkPEnxpisXU8O5DFHBRoFFjkT7v6eWyeyR/7sLI O6Q0D76IAHttnRTB5fsW8QyZu2CweZEn2XaigaU4Sh7GFc8AlBuDH66UUDXF0pQLhYp6 USSA== X-Gm-Message-State: AOAM533ZnZj8PzuPGcPxI64UgxDKz51uP2Zxh6W+p8VwLi0tBqZAFOrA d3yAhPA8dR8GofknimbXP0A= X-Google-Smtp-Source: ABdhPJwXBoRsdDb44X9EuqWeZflAOBRTVuTjdzWUu+OVIA3Rkl7nxfTTlIJV7lDIa7IO9G5VvrDJOw== X-Received: by 2002:a1c:4445:: with SMTP id r66mr3286682wma.140.1603301734029; Wed, 21 Oct 2020 10:35:34 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 09/13] hw/sd/sdcard: Introduce the INVALID_ADDRESS definition Date: Wed, 21 Oct 2020 19:34:46 +0200 Message-Id: <20201021173450.2616910-10-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) '0' is used as a value to indicate an invalid (or unset) address. Use a definition instead of a magic value. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Alexander Bulekov Message-Id: <20201015063824.212980-3-f4bug@amsat.org> --- hw/sd/sd.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 2606b969e34..30ae435d669 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -53,6 +53,8 @@ =20 #define SDSC_MAX_CAPACITY (2 * GiB) =20 +#define INVALID_ADDRESS 0 + typedef enum { sd_r0 =3D 0, /* no response */ sd_r1, /* normal response command */ @@ -575,8 +577,8 @@ static void sd_reset(DeviceState *dev) sd->wpgrps_size =3D sect; sd->wp_groups =3D bitmap_new(sd->wpgrps_size); memset(sd->function_group, 0, sizeof(sd->function_group)); - sd->erase_start =3D 0; - sd->erase_end =3D 0; + sd->erase_start =3D INVALID_ADDRESS; + sd->erase_end =3D INVALID_ADDRESS; sd->size =3D size; sd->blk_len =3D 0x200; sd->pwd_len =3D 0; @@ -750,7 +752,8 @@ static void sd_erase(SDState *sd) uint64_t erase_end =3D sd->erase_end; =20 trace_sdcard_erase(sd->erase_start, sd->erase_end); - if (!sd->erase_start || !sd->erase_end) { + if (sd->erase_start =3D=3D INVALID_ADDRESS + || sd->erase_end =3D=3D INVALID_ADDRESS) { sd->card_status |=3D ERASE_SEQ_ERROR; return; } @@ -763,8 +766,8 @@ static void sd_erase(SDState *sd) =20 erase_start =3D sd_addr_to_wpnum(erase_start); erase_end =3D sd_addr_to_wpnum(erase_end); - sd->erase_start =3D 0; - sd->erase_end =3D 0; + sd->erase_start =3D INVALID_ADDRESS; + sd->erase_end =3D INVALID_ADDRESS; sd->csd[14] |=3D 0x40; =20 for (i =3D erase_start; i <=3D erase_end; i++) { --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.43 as permitted sender) client-ip=209.85.128.43; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f43.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.43 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1603301740; cv=none; d=zohomail.com; s=zohoarc; b=ii4q3/l/C8scSPqw8PVss6ZWmOn01tmkoPJqvs7hCe5mLz/zANZ5w8fZngWovXeKJCtQQ2bIfAiax9Nomx+7eIPk9pO2VUOskdBlcnVh23W2YnO8GzQGChATykoUsUoTZGx1Wtwn5ZScTHhuMBCgCZ7IMeMUOEeMNIMhKswSod8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301740; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=DwXydEAJFsxr67ybFIbW+LVmbJToV8/GLo4Xc+I23PM=; b=QvAI7F+5H+AOcKOPbTJo5jTjHopo4YVT2WUm4OFMMH/LjFYoJvh9e8OWNcVyjONR1Vsx+H45TLKc92tUJlC07px/hTUypPoEvriDotsOIRJFFpV7rQoEiVMV9BrCnflRoku+VqWVbToyzNqzChyzSldiMYgt94coWkWS+Mrh9Ws= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.43 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) by mx.zohomail.com with SMTPS id 160330174042875.3275272905779; Wed, 21 Oct 2020 10:35:40 -0700 (PDT) Received: by mail-wm1-f43.google.com with SMTP id b127so3473656wmb.3 for ; Wed, 21 Oct 2020 10:35:39 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id y14sm4274650wma.48.2020.10.21.10.35.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35:37 -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=DwXydEAJFsxr67ybFIbW+LVmbJToV8/GLo4Xc+I23PM=; b=Im8TggUkWiRcnUmFDECAQ8iBDKaO0Y1v1N/nxp6jAzi9IadnyocqH1CIsG3k0dMuQE RNt5EBQsI9wtTUO2QZUaPGtHNRRK1JMG22mOM6rOiWS/lGX4gSE2SDoiL4XodjOgiWtT oXP/nY77WZNbbAtft37sij41KwtLF0lOfhWhPgptQduCH7DxzoLHa2cFqqGFeEotD6yb HI4ytohulQI0b72ljb7T1YeGO96jbmGNEJI1wpaSKMtKy4PtV+4xuUtmcSbqKV4DibEq o8ckljxrjsd+n1yWCFNYBmoMC3TSgXpfnnv2n0Omq28LKfK/Vfff5iMOjJ8IJrprVeXm WYzA== 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=DwXydEAJFsxr67ybFIbW+LVmbJToV8/GLo4Xc+I23PM=; b=G6reXLK3T8E63+LdML2CM2dVE3F9XBW2m/EX1FPhXLoiYCHaGLWBmmPFfo2U3e3sN5 gwkpfFux0nX41lzH6YvERLbZHrIgbLTD5xrzR8xSvQYIslVLtAbRo3+0xGcmmqhIvEcR MMdtXhRy0ZmAgu4T8joY54npDU/ErnspZmSUqNOC9XKusu9kToqXquf9qqhWpW8MaXUm hj8Tq4sWX6j35goM5lW6mAwwY1PnGTuwf0AWGFNQI6ahBgrQXObbCUdtzlu2DzrK3R4c jgN3tg8nWrP0F7g1TUKUuBxpbWwfjmuYcLtzIsT+N/d82ayUvYM/z7lLex/rhtnPWCoA Jwvg== X-Gm-Message-State: AOAM533FisMGhuA9oD/eVoMfDXjb7EVeI0+r/yrLSSsS8d6ngks4pp3M SQnFFpjJWkg7+zwSgBomlMA= X-Google-Smtp-Source: ABdhPJwI6VnW4GRKD8pxDcALl9ybnwvYcPXmbCXGchSks8gAyUXet8NBK4az6hVVm7ZlcXiacyBvwA== X-Received: by 2002:a1c:c915:: with SMTP id f21mr2673961wmb.73.1603301738435; Wed, 21 Oct 2020 10:35:38 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 10/13] hw/sd/sdcard: Do not use legal address '0' for INVALID_ADDRESS Date: Wed, 21 Oct 2020 19:34:47 +0200 Message-Id: <20201021173450.2616910-11-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) As it is legal to WRITE/ERASE the address/block 0, change the value of this definition to an illegal address: UINT32_MAX. Unfortunately this break the migration stream, so bump the VMState version number. This affects some ARM boards and the SDHCI_PCI device (which is only used for testing). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Alexander Bulekov Message-Id: <20201015063824.212980-4-f4bug@amsat.org> --- hw/sd/sd.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 30ae435d669..4c05152f189 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -53,7 +53,7 @@ =20 #define SDSC_MAX_CAPACITY (2 * GiB) =20 -#define INVALID_ADDRESS 0 +#define INVALID_ADDRESS UINT32_MAX =20 typedef enum { sd_r0 =3D 0, /* no response */ @@ -666,8 +666,8 @@ static int sd_vmstate_pre_load(void *opaque) =20 static const VMStateDescription sd_vmstate =3D { .name =3D "sd-card", - .version_id =3D 1, - .minimum_version_id =3D 1, + .version_id =3D 2, + .minimum_version_id =3D 2, .pre_load =3D sd_vmstate_pre_load, .fields =3D (VMStateField[]) { VMSTATE_UINT32(mode, SDState), --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) client-ip=209.85.128.48; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f48.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1603301744; cv=none; d=zohomail.com; s=zohoarc; b=h1Pwvmc2ZP9wfu8z9x6YVmmvdE87yGlnftGz4de+tmdkglRJ4Fxa9cSsUB+ILotvQntqxmUn1AjOPG6F9d3aX2xqEn4uBa5EvAer/+vMFOlRJoUlv0Y7WLX8lE5UNzH6GNE/PDXPPGrhh2NYWohB2ACxgvp/oXoFsHxd0dX0yFs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301744; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=nLgO4iC9rtoBp7o///HfhJ9kAvL116nD5opOCzZ6+ao=; b=Fthv21mkKkuhqRQdyE4rBIxHrPsnA8qJpqs9tfcacXm1pq2VQ593bSOSISGigQGeNgRpKoed5g6c3D0M7OqWFd5ZE0SKSjR/rQuQ7C/m1+Yna3rx2uJYDv9nu42R/F/45z7MCnHSVyTricKUT2q9Rw7SquX+Ds9Xis5jaWtkO5E= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) by mx.zohomail.com with SMTPS id 1603301744868578.8363379229052; Wed, 21 Oct 2020 10:35:44 -0700 (PDT) Received: by mail-wm1-f48.google.com with SMTP id c194so3000034wme.2 for ; Wed, 21 Oct 2020 10:35:44 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id t5sm5109398wrb.21.2020.10.21.10.35.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35: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 :mime-version:content-transfer-encoding; bh=nLgO4iC9rtoBp7o///HfhJ9kAvL116nD5opOCzZ6+ao=; b=jFCZPQqJ209NEKWXn0BkP4Wuv7Qtgx/48M0Jz/CsKKETc+CqIBhLa339Fpbdy/hlvF VgjHiK20NVHJfvo8PWP0+sbBzOe36FIoOFTPb9ymmkGukT/Mii5obS1Dbv00ZXYnuqqp O5GHuRL5zKuaJCXUIGvqthSrspQUSwccfGD4qilJYf8loPbt8Ds22KDouYhYVFl4wpyq sfj0a7CsBrtUTH2Km2MKe66TQmo3ZK94YavP4Cb4jQfXhrlnw20OByIhDfdPMHnxONeJ igCrnOqKt8HZP3Ph9BpUjEs49PGAVFNn3kSLIInAJ0X3p/y7XWTqUL05BI44uJTuxMgV z2Uw== 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=nLgO4iC9rtoBp7o///HfhJ9kAvL116nD5opOCzZ6+ao=; b=W0QzgHgxNfFQ3ykCNBKI/4Vd1foXwlkQTISITd/Vg/0H9XQmf0HT51XwKTg7skdX+j 8ibJttEBRc+uH+Yw3jmoMg2QpMuFLqY6/GG3ZAYH08sDjVC+TkbCI5KVv7kh8xBjI7jE LAeRzfwNWB4Q93aJYkbQ0mo9kepmr4wYjrRGOwqo6EBSwcwl4aiSKCNdSQCl5lMuOw7S NHrp2jye0byktZEP+8GI2j6b0m8HUtTOC6X/a3vsQwDEzFyuuHems4qM5kK0vBW93Oqo jXQke8NHBgIid3N5cFKyy7QHQ4irGKVLvUZGQ5I2XatAVjVHYUjq5WKnqHEyUw2AZsMG Bdhw== X-Gm-Message-State: AOAM530vbBCoX46Lab8y31DDJiCrbnIWQAtziBgWeRJkIlIeeApxadQH PAsbYPAkannqJ140tWEkUFx2XfUO23w= X-Google-Smtp-Source: ABdhPJxXoJ2CcbAWr0w4/cwwBibCbVaK1KDBdRv5MXEg5zmw9vDYjk5LsVSQ87yiPgVxsx/MXTlgRA== X-Received: by 2002:a1c:3d7:: with SMTP id 206mr4828393wmd.155.1603301742991; Wed, 21 Oct 2020 10:35:42 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 11/13] hw/sd/sdcard: Reset both start/end addresses on error Date: Wed, 21 Oct 2020 19:34:48 +0200 Message-Id: <20201021173450.2616910-12-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From the Spec "4.3.5 Erase": The host should adhere to the following command sequence: ERASE_WR_BLK_START, ERASE_WR_BLK_END and ERASE (CMD38). If an erase (CMD38) or address setting (CMD32, 33) command is received out of sequence, the card shall set the ERASE_SEQ_ERROR bit in the status register and reset the whole sequence. Reset both addresses if the ERASE command occured out of sequence (one of the start/end address is not set). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Alexander Bulekov Message-Id: <20201015063824.212980-5-f4bug@amsat.org> --- hw/sd/sd.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 4c05152f189..ee7b64023aa 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -755,6 +755,8 @@ static void sd_erase(SDState *sd) if (sd->erase_start =3D=3D INVALID_ADDRESS || sd->erase_end =3D=3D INVALID_ADDRESS) { sd->card_status |=3D ERASE_SEQ_ERROR; + sd->erase_start =3D INVALID_ADDRESS; + sd->erase_end =3D INVALID_ADDRESS; return; } =20 --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.67 as permitted sender) client-ip=209.85.128.67; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f67.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.67 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1603301749; cv=none; d=zohomail.com; s=zohoarc; b=g+GHcUM4Vru1Iwro1M8SBlLwlJS5n5QOBzWH1jHgsEEgKm89vOI6uJczUtloxJs0TG9X4uyFB5ky+McE48g+KGgc0OupZYG5QYaYSUmViWOUvfZMbCjs3s+fe8FAy++mvJxCPfkkgfhRsXmGsGOpCKjXdGUs8BSZ8WeWWEngZQc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301749; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=p6WWIsaS0I3UntqPKdZpY4UhujIkCcQKP7e4gj992fw=; b=noPKQugtT0teGgX9X1eB4wOcLEUHzdKh9n5QKbkL7c1QvOVys3Ga4KtdIccOUYtfmmG2cUgwPKVZzUtD+FNLiZDY1kzQn6pBFajYZw3+7FMmHuNX+gw9Gf3vrTc6vG3T1GoEeBCRDyHS282QPZY/pW6v4U+QUeQkYhqQcRp84UQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.67 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wm1-f67.google.com (mail-wm1-f67.google.com [209.85.128.67]) by mx.zohomail.com with SMTPS id 1603301749729450.05664227906425; Wed, 21 Oct 2020 10:35:49 -0700 (PDT) Received: by mail-wm1-f67.google.com with SMTP id c77so2990258wmd.4 for ; Wed, 21 Oct 2020 10:35:49 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id j7sm5150707wrn.81.2020.10.21.10.35.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35:47 -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=p6WWIsaS0I3UntqPKdZpY4UhujIkCcQKP7e4gj992fw=; b=XMcvC8yPcH2DqQ0sZMxPYfcTa/pHDgm6brwx7QDW247J4Q4vNCJOSJ0RlfHoRqmECS UBgK71S/JGHsz1wGj4e2hO0wVXjqC8c4cADVY1S1liSc8fxDiNSFAaAgfIMGZYl5oEad ew2ljuNIQp/xhDjs4LXuKvzWZfaoMaJGwjv93v8aBycHV+El5i7DfNLunIILae/oBmJD wCfGbqWy6Vg/U8ccDwF+HZrCttruQIfq3aRUjcdvHHULjtUtLotQe8CH074eax1UUPNt VaHrNcuLoT+Eo+PXp/4XfMheVI20OgAlU4vAE+mdYrh6VrzopoAkGx5nZxmKL69eKACk 3Ksw== 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=p6WWIsaS0I3UntqPKdZpY4UhujIkCcQKP7e4gj992fw=; b=uGs87KDZrvqHkPnds4urkTYLpsybOD2+0145gm9txXw0ecHmwz0LLFqwBJyEMYypY1 OUeOrNLjxDGQdidzUZyh2duO19rbXBAzYrtGUQwg6OL7zbhpJ4rzQJ8Irz5FnLfVov4O 1ZcBu+za+SugJ2KSWfrzS8tQIvpO9+CoyDxt9MEwzWZuCrlBSdTe7jqvvypFQQcf+hUY nGFuEO9PQNZi25kQO/p5AJYj2Pd4SMp/jjRLCO4P/uEGj/U7Du1HJ+vrWQc8JPg6PFQZ XGHV3+mVBy33tZ9vQ8XQMY1mg5sAqzIPfKNuhBrCDYZAdvOLEJW6+RbS7Ah+1e5J8LtW QgIA== X-Gm-Message-State: AOAM532qV36pE9fHzXXLCdluQzyDzf2/eJs0Ym/JF7qpVH4NU5KTbfNY Jba1xi67G2M2/1c/bCG/3lp5rntMXEI= X-Google-Smtp-Source: ABdhPJxo1UigovYRWF8fiNhKTbGbLDxlaK/ujDfESF2lS7IbEhMIoRZP0vI1NAl/iZU+Chx33VrxvA== X-Received: by 2002:a1c:2d53:: with SMTP id t80mr4451258wmt.125.1603301747614; Wed, 21 Oct 2020 10:35:47 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 12/13] hw/sd/sdcard: Do not attempt to erase out of range addresses Date: Wed, 21 Oct 2020 19:34:49 +0200 Message-Id: <20201021173450.2616910-13-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) While the Spec v3 is not very clear, v6 states: If the host provides an out of range address as an argument to CMD32 or CMD33, the card shall indicate OUT_OF_RANGE error in R1 (ERX) for CMD38. If an address is out of range, do not attempt to erase it: return R1 with the error bit set. Buglink: https://bugs.launchpad.net/qemu/+bug/1895310 Reported-by: Alexander Bulekov Signed-off-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Alexander Bulekov Message-Id: <20201015063824.212980-6-f4bug@amsat.org> --- hw/sd/sd.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index ee7b64023aa..4454d168e2f 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -766,6 +766,13 @@ static void sd_erase(SDState *sd) erase_end *=3D 512; } =20 + if (sd->erase_start > sd->size || sd->erase_end > sd->size) { + sd->card_status |=3D OUT_OF_RANGE; + sd->erase_start =3D INVALID_ADDRESS; + sd->erase_end =3D INVALID_ADDRESS; + return; + } + erase_start =3D sd_addr_to_wpnum(erase_start); erase_end =3D sd_addr_to_wpnum(erase_end); sd->erase_start =3D INVALID_ADDRESS; --=20 2.26.2 From nobody Sat May 18 21:45:36 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) client-ip=209.85.128.47; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f47.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1603301754; cv=none; d=zohomail.com; s=zohoarc; b=C+2bjnKpc8QGis+qqmnTy7uy93SvY57x7eT0/W+LMjeHSIldwbxSESgjffRqYOSpdyPFk2Q5FWiqZpzf7RIihecmVSOeHHAnWt2z7omfZDae4OtszLXeUX5U0D0iulcFUEQDIs2szvnvaZ3nWS2giSd/YakkyjjCuUWvDpy99Tg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1603301754; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+Fm7KbLir3gbzmjKy+27eSKs45PUg9V/AzuCpZDRK/Q=; b=Yz5aPi4I4zuhWYO4pidJmGKzksKF9PX1k9GMiTKLHKNOhwAo4lzMLneeL7fkuYbYQB1dwfsP7SMS7wPyedVamuYv90rccx5BgVBeVZ3QSn4EXXBibLIspLRpFbOFMCcgkXfbrsC+xS8pXeQHBUKf2BKF5x63iro0V4lZfaK9ExQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) by mx.zohomail.com with SMTPS id 1603301754063724.803029807132; Wed, 21 Oct 2020 10:35:54 -0700 (PDT) Received: by mail-wm1-f47.google.com with SMTP id a72so2992852wme.5 for ; Wed, 21 Oct 2020 10:35:53 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (237.red-88-18-140.staticip.rima-tde.net. [88.18.140.237]) by smtp.gmail.com with ESMTPSA id 133sm8735201wmb.2.2020.10.21.10.35.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 10:35:51 -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=+Fm7KbLir3gbzmjKy+27eSKs45PUg9V/AzuCpZDRK/Q=; b=BJckA9U2TgiC+CxfBuvijCXXMaUfzkPWmqaDBx8HO6JNH6gaogOPzZLGozrWjTu46x XTz0jbJQLeBLigFgBopZdMMy2E+5xv6p9TCrb16908nc1++1fC1wVpp6OhLG0VWLbda5 5e42Re/cufcyukyEKQj6h7+UUiwq3BrTl0p6ozYbipJ9dLn3WYut1QuBVf+S1B9N+Gk1 KkQgV/RBgEwpgtH1uDSm5vfI5BI7r9DJfxe9T4gMgMpMGQe92+SMg4z3S4v3L0Qk338I d5vhhlW1cnou8N77tkIaOmHeNMehe3389IXkCNTEkp0juq9azyvS3XNuJ/6XwE/ua9xy HeOA== 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=+Fm7KbLir3gbzmjKy+27eSKs45PUg9V/AzuCpZDRK/Q=; b=sDFdI1ttDUBMB35QGz/hNBp/xVjUgIaNlAMJrKOirJ9OLY2Gc+CRID9LmuqpxIlLfI qI061Saxrj2l971XeAUvM8BVggbHu3/cy6l00ZPSxOQLJN4saX/co3pdSjy6EWhKgvVP p5ka50os7Jav4ddGx2cVeShOcihHfsL0qMIVzvwcbUsQCEqtbeQHj77rlIn7bU9267c2 flovi7B+FuULRN9kJDFlgy3Sj9StDUaVnDlwVQMvF9P2guaphRblpnOnRkW3d8lVHGMK 7hVmbFsl7H8BbMDw8jNydZ9HsKg6TshRN1iEHTORwCqu/kLQ1j4/irzyTBpdPDLodPkG 8iOQ== X-Gm-Message-State: AOAM531/KoZ2VEC8dGeIdjeXS40gJ7CvSraOumedreAH6jbD0JyTe15g U4LsJhyQRj+ssPRqHZ45v80= X-Google-Smtp-Source: ABdhPJyXZR7NSQEPtzfFgA+cILOxyz/oir9OSDeP9Ffxb2N9bdWfaYwgiQ6vdyLLGtlnl4JBwr9PrA== X-Received: by 2002:a7b:c418:: with SMTP id k24mr4913652wmi.118.1603301752277; Wed, 21 Oct 2020 10:35:52 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 13/13] hw/sd/sdcard: Assert if accessing an illegal group Date: Wed, 21 Oct 2020 19:34:50 +0200 Message-Id: <20201021173450.2616910-14-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201021173450.2616910-1-f4bug@amsat.org> References: <20201021173450.2616910-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) We can not have more group than 'wpgrps_size'. Assert if we are accessing a group above this limit. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Alexander Bulekov Message-Id: <20201015063824.212980-7-f4bug@amsat.org> --- hw/sd/sd.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 4454d168e2f..c3febed2434 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -780,6 +780,7 @@ static void sd_erase(SDState *sd) sd->csd[14] |=3D 0x40; =20 for (i =3D erase_start; i <=3D erase_end; i++) { + assert(i < sd->wpgrps_size); if (test_bit(i, sd->wp_groups)) { sd->card_status |=3D WP_ERASE_SKIP; } @@ -794,6 +795,7 @@ static uint32_t sd_wpbits(SDState *sd, uint64_t addr) wpnum =3D sd_addr_to_wpnum(addr); =20 for (i =3D 0; i < 32; i++, wpnum++, addr +=3D WPGROUP_SIZE) { + assert(wpnum < sd->wpgrps_size); if (addr < sd->size && test_bit(wpnum, sd->wp_groups)) { ret |=3D (1 << i); } --=20 2.26.2