From nobody Fri Apr 26 07:07:37 2024 Delivered-To: importer@patchew.org Received-SPF: temperror (zoho.com: Error in retrieving data from DNS) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=temperror (zoho.com: Error in retrieving data from DNS) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1513217107816842.1831336058716; Wed, 13 Dec 2017 18:05:07 -0800 (PST) Received: from localhost ([::1]:38756 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePItU-0000Yg-3k for importer@patchew.org; Wed, 13 Dec 2017 21:05:04 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53334) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIpG-0005gL-Mk for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:00:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ePIpF-0003N6-El for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:00:42 -0500 Received: from mail-qt0-x242.google.com ([2607:f8b0:400d:c0d::242]:46526) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ePIpF-0003Mi-An; Wed, 13 Dec 2017 21:00:41 -0500 Received: by mail-qt0-x242.google.com with SMTP id r39so6174446qtr.13; Wed, 13 Dec 2017 18:00:41 -0800 (PST) Received: from x1.local ([181.91.222.165]) by smtp.gmail.com with ESMTPSA id n39sm1938120qtn.95.2017.12.13.18.00.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Dec 2017 18:00:40 -0800 (PST) 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=2TYkBN6gDT6e8qB2laVOvmWLo76x1KqvDILTOff3xfo=; b=skV6HKcBPZt7/pYAKBbHVGzlzlu1xiaM2C4khPhLovy3Sfx/ihyd21RZVLShGJMf3k iiIN55U6c8zBuHXqmSLXZpvI8o6VX4fgx36DrRO7S+YKGBL0mLtz8n6oP0J9M1wduB6M juFUjvTaK6aGu0yZOG5ErZHAElJIZ1CTUMpoA7dervvWAYVcSA60KIYazI1NiqHNL1pT ebg+AdLz8EqmdYt3AGsZKNhTco0JPmOcNMwNq588724/PeLBCKG+pr+LnIifEAtmdxGJ DqL2z8J0mFwUBihM7G2113XbyvOwTJn3+OUSDh4v22fRPdHuMoeg1taDYTnKS5Ili9Cu p7sA== 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=2TYkBN6gDT6e8qB2laVOvmWLo76x1KqvDILTOff3xfo=; b=hspKm+0ahIeh/TBow30pW93MwveNWTFUsjpH95+9hzekYbifeOe1ElG/nSuyWc6a/R ZmFShnfqckL2pMfca53GRbJA89PdTsDWRslEZcjwvRMlXfmCeNQo04oWIBi/xv22ZkPI rdLmrX2COjT1Zr5v1vhpOOsHmkRkXxrXs562kp//6S8ZvFzKgdJ9jioWOscOikG1LUeP XWFqw+XzYIdgLZNkQZthuEhJ2C8Wd7n9K6P2esiFo9Kr2yk9tnTT4jPTygVHxVr/w4wj 7Qy+nzZMHc6wMVXimOubjLwYj//VC8lXM8T4u3NKBuQvTtrLTrFhn7HzoUjz0IGBh3fH w6ow== X-Gm-Message-State: AKGB3mI269D3dFfFNFblBNlfaN97eLw0Qkqz/7ROH5qAUuJ5T4I+01CG 9+JCza8kAsxDnQVXuT6YXls= X-Google-Smtp-Source: ACJfBouIFmASPe9j+da+Z9lcqfdznie8jA+t4JSn2C4cOhka3Eiux0vKl7z3Q5eYVf0gp+TIQmxpaA== X-Received: by 10.237.58.67 with SMTP id n61mr14172887qte.171.1513216840656; Wed, 13 Dec 2017 18:00:40 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Alistair Francis , "Edgar E . Iglesias" , Prasad J Pandit , Peter Maydell , Andrzej Zaborowski , Andrew Baumann , Andrey Smirnov , Andrey Yurovsky Date: Wed, 13 Dec 2017 23:00:18 -0300 Message-Id: <20171214020025.4004-2-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20171214020025.4004-1-f4bug@amsat.org> References: <20171214020025.4004-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::242 Subject: [Qemu-devel] [PATCH 1/8] sdhci: add a "sd-spec-version" property 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: Sai Pavan Boddu , Peter Crosthwaite , qemu-arm@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_6 Z_629925259 SPT_0 default to SDHCI v2 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Alistair Francis --- I am not sure which real VENDOR is HCVER=3D0x24, we probably don't care. hw/sd/sdhci-internal.h | 4 ++-- include/hw/sd/sdhci.h | 10 ++++++++++ hw/sd/sdhci.c | 5 ++++- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/hw/sd/sdhci-internal.h b/hw/sd/sdhci-internal.h index e941bc2386..7e4a9d79d1 100644 --- a/hw/sd/sdhci-internal.h +++ b/hw/sd/sdhci-internal.h @@ -210,9 +210,9 @@ /* Slot interrupt status */ #define SDHC_SLOT_INT_STATUS 0xFC =20 -/* HWInit Host Controller Version Register 0x0401 */ +/* HWInit Host Controller Version Register */ #define SDHC_HCVER 0xFE -#define SD_HOST_SPECv2_VERS 0x2401 +#define SDHC_HCVER_VENDOR 0x24 =20 #define SDHC_REGISTERS_MAP_SIZE 0x100 #define SDHC_INSERTION_DELAY (NANOSECONDS_PER_SECOND) diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index 579e0ea644..f8e91ce903 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -88,6 +88,9 @@ typedef struct SDHCIState { /* Force Event Auto CMD12 Error Interrupt Reg - write only */ /* Force Event Error Interrupt Register- write only */ /* RO Host Controller Version Register always reads as 0x2401 */ + struct { + uint8_t spec_version; + } capabilities; } SDHCIState; =20 #define TYPE_PCI_SDHCI "sdhci-pci" @@ -97,4 +100,11 @@ typedef struct SDHCIState { #define SYSBUS_SDHCI(obj) \ OBJECT_CHECK(SDHCIState, (obj), TYPE_SYSBUS_SDHCI) =20 +/* Host Controller Specification Version */ +enum sdhci_spec_version { + SD_HOST_SPECv1_VERS =3D 0x00, + SD_HOST_SPECv2_VERS =3D 0x01, + SD_HOST_SPECv3_VERS =3D 0x02 +}; + #endif /* SDHCI_H */ diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index d8188fdc2a..d6145342fb 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -908,7 +908,8 @@ static uint64_t sdhci_read(void *opaque, hwaddr offset,= unsigned size) ret =3D (uint32_t)(s->admasysaddr >> 32); break; case SDHC_SLOT_INT_STATUS: - ret =3D (SD_HOST_SPECv2_VERS << 16) | sdhci_slotint(s); + ret =3D (SDHC_HCVER_VENDOR << 24) | (s->capabilities.spec_version = << 16); + ret |=3D sdhci_slotint(s); break; default: qemu_log_mask(LOG_UNIMP, "SDHC rd_%ub @0x%02" HWADDR_PRIx " " @@ -1263,6 +1264,8 @@ const VMStateDescription sdhci_vmstate =3D { /* Capabilities registers provide information on supported features of this * specific host controller implementation */ static Property sdhci_properties[] =3D { + DEFINE_PROP_UINT8("sd-spec-version", SDHCIState, + capabilities.spec_version, SD_HOST_SPECv2_VERS), DEFINE_PROP_UINT32("capareg", SDHCIState, capareg, UINT32_MAX), DEFINE_PROP_UINT32("maxcurr", SDHCIState, maxcurr, 0), DEFINE_PROP_BOOL("pending-insert-quirk", SDHCIState, pending_insert_qu= irk, --=20 2.15.1 From nobody Fri Apr 26 07:07:37 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1513216985941126.16070521455163; Wed, 13 Dec 2017 18:03:05 -0800 (PST) Received: from localhost ([::1]:38736 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIrR-0007AG-4a for importer@patchew.org; Wed, 13 Dec 2017 21:02:57 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53422) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIpO-0005ma-Ih for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:00:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ePIpL-0003Tf-H6 for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:00:50 -0500 Received: from mail-qt0-x243.google.com ([2607:f8b0:400d:c0d::243]:41858) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ePIpL-0003TE-CA; Wed, 13 Dec 2017 21:00:47 -0500 Received: by mail-qt0-x243.google.com with SMTP id i40so6199096qti.8; Wed, 13 Dec 2017 18:00:47 -0800 (PST) Received: from x1.local ([181.91.222.165]) by smtp.gmail.com with ESMTPSA id n39sm1938120qtn.95.2017.12.13.18.00.40 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Dec 2017 18:00:46 -0800 (PST) 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=STuR0bh52QufBMsHBr1SwVtA6kUM3U3tjEvi5j6Pkto=; b=S24vFKDlgv8rtga6FzlpP1OkHYCaH9XWXPvEiwqRSkAfEZIVWyKjJqCNgOdHD9Wx94 gGEc6deHCXCojDkisIjTeoEQcfPkeG4c8zvqRZr2lOm6B0LNsUQVMGecxDvSQUbp3cnd WiAvwe8+Xz4RO0qzYokTZI+iGFPxr0e072VTtfWQvAo7IWDzVN0bHAGBNqCXWplojzmg YABRHTxDZdfdj6acWHRoRoiqe/EI1obL9VR3Ih/PQdVpTczW4Qj3lPVE5EgchoFxGfNT 8N3NnW3PF6By9rrhjz0hyYwvNlc/vI/WP96uFJitfsOO0BQsJchWf2yAKGPy4C5YDCFu Xbeg== 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=STuR0bh52QufBMsHBr1SwVtA6kUM3U3tjEvi5j6Pkto=; b=DNiE11gh7cLKZUtFiPQkmNMJVxSC2uFHUtQ4fj4vMmKF3tHU2TftPZ9QlANwZmncuC bYgL2fovGI2V+jxKL3WVrygdo1hRNPAIJocyo8FjVDUncxAUOM7FIFZyvR6JMXwgMvjd h8Al5S5Gr34TuTW/qiYrF8h8lxp6ixfPGElD+HeNlkeRQ19mmF+/N93GypCqZ65zL4HX KVvGayXO4p/29SG+8pB75gQ52niCkTL3Yg3Gk6lYHzh8mZk2c6WIMG+2dxXuO40OUmLQ xibAz4BK2WCuLHIDNTH4vB+vmi7+P+sfgMoJ2ZaF3ViRL7t3+1U/fSU5Nb/tRvHAIn07 1CUA== X-Gm-Message-State: AKGB3mJI+RRsgYXeYiLTANbdtberCxA5lXdPPWl/hOU28N2WJBraGA99 waSe+/YOab82i+voJ9UDINo= X-Google-Smtp-Source: ACJfBovWfLlkm986xTbBtvSSlS5XSGrUXy+VLAwCPh9SG5PuJJV31Emhs3gW8Ot7qVLknjtUlNuDVA== X-Received: by 10.237.63.121 with SMTP id q54mr14367493qtf.337.1513216846739; Wed, 13 Dec 2017 18:00:46 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Alistair Francis , "Edgar E . Iglesias" , Prasad J Pandit , Peter Maydell , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Andrzej Zaborowski , Andrew Baumann , Andrey Smirnov , Andrey Yurovsky , Clement Deschamps , Jean-Christophe Dubois , =?UTF-8?q?Gr=C3=A9gory=20Estrade?= , Igor Mitsyanko , Krzysztof Kozlowski Date: Wed, 13 Dec 2017 23:00:19 -0300 Message-Id: <20171214020025.4004-3-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20171214020025.4004-1-f4bug@amsat.org> References: <20171214020025.4004-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::243 Subject: [Qemu-devel] [PATCH 2/8] sdhci: some ARM boards do support SD_HOST_SPECv3_VERS 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: Peter Crosthwaite , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org, Sai Pavan Boddu , qemu-arm@nongnu.org, "Edgar E. Iglesias" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 set the property with object_property_set_uint() or qdev_prop_set_uint8(). [Zynq part based on a patch from Alistair Francis from qemu/xilinx tag xilinx-v2015.2] Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Alistair Francis --- hw/arm/bcm2835_peripherals.c | 7 +++++++ hw/arm/fsl-imx6.c | 6 ++++++ hw/arm/xilinx_zynq.c | 2 ++ 3 files changed, 15 insertions(+) diff --git a/hw/arm/bcm2835_peripherals.c b/hw/arm/bcm2835_peripherals.c index 60a0eec4d1..e686725015 100644 --- a/hw/arm/bcm2835_peripherals.c +++ b/hw/arm/bcm2835_peripherals.c @@ -264,6 +264,13 @@ static void bcm2835_peripherals_realize(DeviceState *d= ev, Error **errp) return; } =20 + object_property_set_uint(OBJECT(&s->sdhci), SD_HOST_SPECv3_VERS, + "sd-spec-version", &err); + if (err) { + error_propagate(errp, err); + return; + } + object_property_set_bool(OBJECT(&s->sdhci), true, "realized", &err); if (err) { error_propagate(errp, err); diff --git a/hw/arm/fsl-imx6.c b/hw/arm/fsl-imx6.c index 59ef33efa9..c474e707af 100644 --- a/hw/arm/fsl-imx6.c +++ b/hw/arm/fsl-imx6.c @@ -348,6 +348,12 @@ static void fsl_imx6_realize(DeviceState *dev, Error *= *errp) { FSL_IMX6_uSDHC4_ADDR, FSL_IMX6_uSDHC4_IRQ }, }; =20 + object_property_set_uint(OBJECT(&s->esdhc[i]), SD_HOST_SPECv3_VERS, + "sd-spec-version", &err); + if (err) { + error_propagate(errp, err); + return; + } object_property_set_bool(OBJECT(&s->esdhc[i]), true, "realized", &= err); if (err) { error_propagate(errp, err); diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c index 9275ae6daf..0292feea74 100644 --- a/hw/arm/xilinx_zynq.c +++ b/hw/arm/xilinx_zynq.c @@ -250,6 +250,7 @@ static void zynq_init(MachineState *machine) =20 dev =3D qdev_create(NULL, TYPE_SYSBUS_SDHCI); qdev_prop_set_string(dev, "sd-bus-name", "sd.0"); + qdev_prop_set_uint8(dev, "sd-spec-version", SD_HOST_SPECv3_VERS); qdev_init_nofail(dev); sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, 0xE0100000); sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, pic[56-IRQ_OFFSET]); @@ -262,6 +263,7 @@ static void zynq_init(MachineState *machine) object_property_set_bool(OBJECT(carddev), true, "realized", &error_fat= al); =20 dev =3D qdev_create(NULL, TYPE_SYSBUS_SDHCI); + qdev_prop_set_uint8(dev, "sd-spec-version", SD_HOST_SPECv3_VERS); qdev_prop_set_string(dev, "sd-bus-name", "sd.1"); qdev_init_nofail(dev); sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, 0xE0101000); --=20 2.15.1 From nobody Fri Apr 26 07:07:37 2024 Delivered-To: importer@patchew.org Received-SPF: temperror (zoho.com: Error in retrieving data from DNS) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=temperror (zoho.com: Error in retrieving data from DNS) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1513216979545906.5990365178915; Wed, 13 Dec 2017 18:02:59 -0800 (PST) Received: from localhost ([::1]:38735 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIrQ-00077w-MI for importer@patchew.org; Wed, 13 Dec 2017 21:02:56 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53468) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIpR-0005q1-Sw for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:00:54 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ePIpR-0003XZ-0U for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:00:53 -0500 Received: from mail-qt0-x243.google.com ([2607:f8b0:400d:c0d::243]:45436) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ePIpQ-0003XC-SP; Wed, 13 Dec 2017 21:00:52 -0500 Received: by mail-qt0-x243.google.com with SMTP id g10so6173321qtj.12; Wed, 13 Dec 2017 18:00:52 -0800 (PST) Received: from x1.local ([181.91.222.165]) by smtp.gmail.com with ESMTPSA id n39sm1938120qtn.95.2017.12.13.18.00.47 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Dec 2017 18:00:51 -0800 (PST) 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=Vev8MhLMciIvWBluuQcZCdjTg1BNBXmf5vZh6F0wBo4=; b=tbkeDuQjIZvtfBrOQqJ8CEIi3jUeuJ1Bs2KCxCkGF2OUrZ6CCDhmGNMRN8iepCPf1f pRZ98zHmG/25ic6v1wXouHwTLNYInMoRwKbxqA/ZlVV+WGsT4nHadcDqCQhDnCRUHSHm g/ZF3pNNGp2uQj2sJLF9jXerpDAPQSqgFYxk4zVDr+mxrt9mMMS4k6rPNezD6KCjjvXd 2jQXEhNr/nzOFc5G0HxGI27Rm//Q6VSIjaKLnMhRibaw7LyGjTbPJsv3LnK88lxcF5YM 1RsU+2+b7d0WYMUg6waGQ/DQ98YoQBGxk7M3rb5kAZVGZQwyZteFV5P2g98+s/AIw81f zEXQ== 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=Vev8MhLMciIvWBluuQcZCdjTg1BNBXmf5vZh6F0wBo4=; b=PBlZw0HAZ00lS3FOTJ8QndELMzFRDrKjBD1LxeXo5lZl/+/Z07F24qtIq4jgSMTQzT 8a3N9AJE5a8uRDEfhANYfSwhgBhhD5j9CeKTtw913/0T/TmhrYT10zJS2HxYt0dY4k0J zRZ8xWxaKDMLenSgTytsYfBHLfnrIeWBjoFuy1Aw2M0NNgbmBxb+VBkkEDcITbgVqagv hBwrS8TiLtwykLpTLtlHpwHLTv94+feH+e5oLkPS49ZxMGLn3nPnLBWg6Eg7pGdCNzVF meUQmBpt6cJPNT2ao6DsEGgG0lB1/A6Bp5mGSHHMiHDoXc4NlaXQcXJG2+uSACYUbhTH yFUA== X-Gm-Message-State: AKGB3mIy7e85F/szrmpd0RD2MQvBUaWKrZHLgU4+bmzj2jn7wOpxbJaJ ByOXB0/Wezn/jhXOcEzE/mw= X-Google-Smtp-Source: ACJfBosSZSchVYdIp5wL3GzNKzzk/04NTE6nsZDIU92LpmwghoK5tAJSQu5mpROdscazO3wIeS68GQ== X-Received: by 10.200.3.158 with SMTP id t30mr13971004qtg.149.1513216852290; Wed, 13 Dec 2017 18:00:52 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Alistair Francis , "Edgar E . Iglesias" , Peter Maydell , Andrzej Zaborowski , Andrew Baumann , Andrey Smirnov , Andrey Yurovsky , Clement Deschamps , =?UTF-8?q?Gr=C3=A9gory=20Estrade?= , Igor Mitsyanko , Krzysztof Kozlowski Date: Wed, 13 Dec 2017 23:00:20 -0300 Message-Id: <20171214020025.4004-4-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20171214020025.4004-1-f4bug@amsat.org> References: <20171214020025.4004-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::243 Subject: [Qemu-devel] [PATCH 3/8] sdhci: add qtest to check the SD Spec version 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: Prasad J Pandit , Peter Crosthwaite , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org, Sai Pavan Boddu , qemu-arm@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_6 Z_629925259 SPT_0 read the HCVER register with check_specs_version() Machines tested: - Specs v2: smdkc210 - Specs v3: sabrelite raspi2 xilinx-zynq-a9 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- tests/sdhci-test.c | 74 ++++++++++++++++++++++++++++++++++++++++++++++= ++++ tests/Makefile.include | 1 + 2 files changed, 75 insertions(+) create mode 100644 tests/sdhci-test.c diff --git a/tests/sdhci-test.c b/tests/sdhci-test.c new file mode 100644 index 0000000000..4ebe1e349b --- /dev/null +++ b/tests/sdhci-test.c @@ -0,0 +1,74 @@ +/* + * QTest testcase for SDHCI controllers + * + * Written by Philippe Mathieu-Daud=C3=A9 + * + * This work is licensed under the terms of the GNU GPL, version 2 or late= r. + * See the COPYING file in the top-level directory. + */ +#include "qemu/osdep.h" +#include "libqtest.h" + +#define SDHC_HCVER 0xFE + +static const struct sdhci_t { + const char *arch; + const char *machine; + struct { + uintptr_t addr; + uint8_t version; + } sdhci; +} models[] =3D { + { "arm", "smdkc210", + {0x12510000, 2} }, + { "arm", "sabrelite", + {0x02190000, 3} }, + { "arm", "raspi2", /* bcm2835 */ + {0x3f300000, 3} }, + { "arm", "xilinx-zynq-a9", /* exynos4210 */ + {0xe0100000, 3} }, +}; + +static uint32_t sdhci_readl(uintptr_t base, uint32_t reg_addr) +{ + QTestState *qtest =3D global_qtest; + + return qtest_readl(qtest, base + reg_addr); +} + +static void check_specs_version(uintptr_t addr, uint8_t version) +{ + uint32_t v; + + v =3D sdhci_readl(addr, SDHC_HCVER); + v &=3D 0xff; + v +=3D 1; + g_assert_cmpuint(v, =3D=3D, version); +} + +static void test_machine(const void *data) +{ + const struct sdhci_t *test =3D data; + + global_qtest =3D qtest_startf("-machine %s -d unimp", test->machine); + + check_specs_version(test->sdhci.addr, test->sdhci.version); + + qtest_quit(global_qtest); +} + +int main(int argc, char *argv[]) +{ + char *name; + int i; + + g_test_init(&argc, &argv, NULL); + + for (i =3D 0; i < ARRAY_SIZE(models); i++) { + name =3D g_strdup_printf("sdhci/%s", models[i].machine); + qtest_add_data_func(name, &models[i], test_machine); + g_free(name); + } + + return g_test_run(); +} diff --git a/tests/Makefile.include b/tests/Makefile.include index 4a1afcb499..c6c0a91827 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -355,6 +355,7 @@ check-qtest-arm-y +=3D tests/virtio-blk-test$(EXESUF) gcov-files-arm-y +=3D arm-softmmu/hw/block/virtio-blk.c check-qtest-arm-y +=3D tests/test-arm-mptimer$(EXESUF) gcov-files-arm-y +=3D hw/timer/arm_mptimer.c +check-qtest-arm-y +=3D tests/sdhci-test$(EXESUF) check-qtest-arm-y +=3D tests/sdcard_tests.py =20 check-qtest-aarch64-y =3D tests/numa-test$(EXESUF) --=20 2.15.1 From nobody Fri Apr 26 07:07:37 2024 Delivered-To: importer@patchew.org Received-SPF: temperror (zoho.com: Error in retrieving data from DNS) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=temperror (zoho.com: Error in retrieving data from DNS) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1513217145751540.1427621567258; Wed, 13 Dec 2017 18:05:45 -0800 (PST) Received: from localhost ([::1]:38763 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIu4-00014T-Vh for importer@patchew.org; Wed, 13 Dec 2017 21:05:40 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53548) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIpX-0005vu-Ue for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:01 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ePIpW-0003bG-Mh for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:00 -0500 Received: from mail-qk0-x244.google.com ([2607:f8b0:400d:c09::244]:37583) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ePIpW-0003ay-IT; Wed, 13 Dec 2017 21:00:58 -0500 Received: by mail-qk0-x244.google.com with SMTP id i130so4494672qke.4; Wed, 13 Dec 2017 18:00:58 -0800 (PST) Received: from x1.local ([181.91.222.165]) by smtp.gmail.com with ESMTPSA id n39sm1938120qtn.95.2017.12.13.18.00.52 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Dec 2017 18:00:56 -0800 (PST) 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=adt9Hl5qa5pMgKy+C/LUtVzOFneofvsbAZ378k8MCmo=; b=CQQg20HrlJc+45fAKT+PZ4SYT4u5nAW29Oe0I6eAWwPSTX9Xb4FDLvpmzI6r1anGuB OI/9Zhz3ztEJStuHsShe2yaTmTEH86Rfva5PKbVgw2ywIQtuqKd4LJHFmEEv5CVPhIr4 Jo1fKrENqobRO+xZfgBSB4dttqLwLIBPmMiwWbS15COjqpkNY3S7Vc4QM+GKLQXReEoc z2Cd5wBGZ1unhpAsCyYy0MM4qQpjXFj/kiH26DUHYL+kJ+7fpygqR3RFpbqMDYB1E/aL Nw7FTXkm2nTpVH4dAYIKAE243mA1SF3miJT3/gKbFiLF7v39clQSXmg9JLffukV2qNdW xc2Q== 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=adt9Hl5qa5pMgKy+C/LUtVzOFneofvsbAZ378k8MCmo=; b=Lh/R8FLJ44PzbPwdyJsrD69Be4LIRAFfNGDTMQnikrI56eGwaSdV5s4Qvbi3otAp5a Rhke2Dftdhgwm1XhRl1B/JzJ1VSs4NvF5UatPLAYu5uPI5iUwoSJeX6BORAxOuCAAoak laSXtdsrGC7No8GvI/4NlUPZWy22RL+CaZcY0To4T4lNmnoW5Y5Ija+s6VMrJcVEq2Di hzgjpYmx2XdiqP3+By1JRkLUQsdPVxEfQG3vdhuHGOmd3tuRUs6E0iDT96xpOCFVB8ln eMKFZD/HYSzdL6nGqXtWf/EoW4uhPZVtPqtNot0nABWEisssDk0Kduj9cocZy0itfPnW npqQ== X-Gm-Message-State: AKGB3mI3bOYSYIT3w1ih7RLoaPAQYMNYYHtqiYPjOcdBoKdf2YoxlrmP 1X4SAAoe+S+MO31MX17JNK0= X-Google-Smtp-Source: ACJfBouWzuDLsLt6gazUw8gsVHUEIGfpYyyzNFRg41Aq0fLqpBanN5y5QDay3xL4w7rVq4FbYHDiyQ== X-Received: by 10.55.207.7 with SMTP id e7mr13879323qkj.291.1513216857933; Wed, 13 Dec 2017 18:00:57 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Alistair Francis , "Edgar E . Iglesias" , Prasad J Pandit , Peter Maydell , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Andrzej Zaborowski , Andrew Baumann , Andrey Smirnov , Andrey Yurovsky , Clement Deschamps , =?UTF-8?q?Gr=C3=A9gory=20Estrade?= Date: Wed, 13 Dec 2017 23:00:21 -0300 Message-Id: <20171214020025.4004-5-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20171214020025.4004-1-f4bug@amsat.org> References: <20171214020025.4004-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::244 Subject: [Qemu-devel] [PATCH 4/8] sdhci: fix CAPAB/MAXCURR registers, both are 64bit and read-only 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: Sai Pavan Boddu , Peter Crosthwaite , qemu-arm@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_6 Z_629925259 SPT_0 running qtests: $ make check-qtest-arm GTESTER check-qtest-arm SDHC rd_4b @0x44 not implemented SDHC wr_4b @0x40 <- 0x89abcdef not implemented SDHC wr_4b @0x44 <- 0x01234567 not implemented Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Alistair Francis --- include/hw/sd/sdhci.h | 4 ++-- hw/sd/sdhci.c | 25 ++++++++++++++++++++----- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index f8e91ce903..d5093fe3fd 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -75,8 +75,8 @@ typedef struct SDHCIState { uint16_t acmd12errsts; /* Auto CMD12 error status register */ uint64_t admasysaddr; /* ADMA System Address Register */ =20 - uint32_t capareg; /* Capabilities Register */ - uint32_t maxcurr; /* Maximum Current Capabilities Register */ + uint64_t capareg; /* Capabilities Register */ + uint64_t maxcurr; /* Maximum Current Capabilities Register */ uint8_t *fifo_buffer; /* SD host i/o FIFO buffer */ uint32_t buf_maxsz; uint16_t data_count; /* current element in FIFO buffer */ diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index d6145342fb..4d269c7ac4 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -99,7 +99,7 @@ =20 static void sdhci_init_capareg(SDHCIState *s, Error **errp) { - if (s->capareg =3D=3D UINT32_MAX) { + if (s->capareg =3D=3D UINT64_MAX) { s->capareg =3D SDHC_CAPAB_REG_DEFAULT; } } @@ -893,10 +893,16 @@ static uint64_t sdhci_read(void *opaque, hwaddr offse= t, unsigned size) ret =3D s->acmd12errsts; break; case SDHC_CAPAREG: - ret =3D s->capareg; + ret =3D (uint32_t)s->capareg; + break; + case SDHC_CAPAREG + 4: + ret =3D (uint32_t)(s->capareg >> 32); break; case SDHC_MAXCURR: - ret =3D s->maxcurr; + ret =3D (uint32_t)s->maxcurr; + break; + case SDHC_MAXCURR + 4: + ret =3D (uint32_t)(s->maxcurr >> 32); break; case SDHC_ADMAERR: ret =3D s->admaerr; @@ -1117,6 +1123,15 @@ sdhci_write(void *opaque, hwaddr offset, uint64_t va= l, unsigned size) } sdhci_update_irq(s); break; + + case SDHC_CAPAREG: + case SDHC_CAPAREG + 4: + case SDHC_MAXCURR: + case SDHC_MAXCURR + 4: + qemu_log_mask(LOG_GUEST_ERROR, "SDHC wr_%ub @0x%02" HWADDR_PRIx + " <- 0x%08x read-only\n", size, offset, value >> shi= ft); + break; + default: qemu_log_mask(LOG_UNIMP, "SDHC wr_%ub @0x%02" HWADDR_PRIx " <- 0x%= 08x " "not implemented\n", size, offset, value >> shift); @@ -1266,8 +1281,8 @@ const VMStateDescription sdhci_vmstate =3D { static Property sdhci_properties[] =3D { DEFINE_PROP_UINT8("sd-spec-version", SDHCIState, capabilities.spec_version, SD_HOST_SPECv2_VERS), - DEFINE_PROP_UINT32("capareg", SDHCIState, capareg, UINT32_MAX), - DEFINE_PROP_UINT32("maxcurr", SDHCIState, maxcurr, 0), + DEFINE_PROP_UINT64("capareg", SDHCIState, capareg, UINT64_MAX), + DEFINE_PROP_UINT64("maxcurr", SDHCIState, maxcurr, 0), DEFINE_PROP_BOOL("pending-insert-quirk", SDHCIState, pending_insert_qu= irk, false), DEFINE_PROP_LINK("dma-memory", SDHCIState, dma_mr, --=20 2.15.1 From nobody Fri Apr 26 07:07:37 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1513217048647952.7089376940231; Wed, 13 Dec 2017 18:04:08 -0800 (PST) Received: from localhost ([::1]:38741 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIsP-00082Y-Qu for importer@patchew.org; Wed, 13 Dec 2017 21:03:57 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53588) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIpb-0005zC-C5 for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ePIpa-0003dZ-Dn for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:03 -0500 Received: from mail-qk0-x241.google.com ([2607:f8b0:400d:c09::241]:41052) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ePIpa-0003dL-9W for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:02 -0500 Received: by mail-qk0-x241.google.com with SMTP id 84so4505365qks.8 for ; Wed, 13 Dec 2017 18:01:02 -0800 (PST) Received: from x1.local ([181.91.222.165]) by smtp.gmail.com with ESMTPSA id n39sm1938120qtn.95.2017.12.13.18.00.58 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Dec 2017 18:01:00 -0800 (PST) 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=VQNDv4iB3xBlX+FRYd5ETiqtKjEwkINkeT1O46wxjPU=; b=e4WjvnLhsaPIp4eGz2KdgHeVdwauLwQwhu4Eog36eLhd8PX2hDYmiRGaPf+lQYtA04 EHI6hM2BhdeVsztHQT4Tc1BggzkX2f+/hnMmqulMSgWSO5uT8stV6l7+H+lHhlqA8mba ZEtSTSN5BlwnwZ/JVzbFItg3R05CLQ25FRLiJYeuNT73rI+QmQT9622be8E83GeXzac6 SFFzWPvIIpvifdViI+qArv7qQfbLKtd3+cN5Q1YeZMc6uC7ikImnr/JWTlQGBI7m7a49 AYED8uwLTy5b8UY2hHW9LVHNCC+HWP3seoLohAvRul5se4UnZFAfLlQk8O5b/iWlXLXS Q3FQ== 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=VQNDv4iB3xBlX+FRYd5ETiqtKjEwkINkeT1O46wxjPU=; b=UehKShIkodSBlGTGUKlTNdtAg4y43/wVJQN1K/QEGUXGFLSiecqnUTi/SL6pClIKXG hBwlk+LbZd7E6s0YMuNShzhfLgEBaupbi6NjfRCfa0xFVocJmIQK+1ht57Zlb4D/a8Jk fL6IkIh6xTPIXVRO9P6ctVvakGoXCT/a1+SB7xHNJPoOw3V0GtpWLZtA/phC25HGTOIi cy9PNJbBcD8n0RkyHuwQz+4OCbFaducx39MTwbh/aOY9/fYePSVZ9D4AgFYuO/da0QlX bQ+IDhPlzRUUWzb47y1kwuKnEz6c4CDzl9rOCb/WRcWp2Jvg368M3IzPIzMu9detEGTa qP6Q== X-Gm-Message-State: AKGB3mKU5I57FATZn0OSzkl4sdyoevmaijg99vbnT9SZ4FfPljd2aq5u XivKARCIuygpvWo6ZzcDHwE= X-Google-Smtp-Source: ACJfBosjGTOB5diR9xJo+0Anr1YMjjIG8W2+O8WCRJQ0BwmV7HLi1qZzh3tRMHPecqIfSdUAokUdBA== X-Received: by 10.55.75.197 with SMTP id y188mr13299563qka.96.1513216861698; Wed, 13 Dec 2017 18:01:01 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Alistair Francis , "Edgar E . Iglesias" , Peter Maydell Date: Wed, 13 Dec 2017 23:00:22 -0300 Message-Id: <20171214020025.4004-6-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20171214020025.4004-1-f4bug@amsat.org> References: <20171214020025.4004-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::241 Subject: [Qemu-devel] [PATCH 5/8] sdhci: add check_capab_readonly() qtest 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: Sai Pavan Boddu , Prasad J Pandit , Peter Crosthwaite , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 read the CAPAB register. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- tests/sdhci-test.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/tests/sdhci-test.c b/tests/sdhci-test.c index 4ebe1e349b..01373a69df 100644 --- a/tests/sdhci-test.c +++ b/tests/sdhci-test.c @@ -9,6 +9,7 @@ #include "qemu/osdep.h" #include "libqtest.h" =20 +#define SDHC_CAPAB 0x40 #define SDHC_HCVER 0xFE =20 static const struct sdhci_t { @@ -36,6 +37,20 @@ static uint32_t sdhci_readl(uintptr_t base, uint32_t reg= _addr) return qtest_readl(qtest, base + reg_addr); } =20 +static uint64_t sdhci_readq(uintptr_t base, uint32_t reg_addr) +{ + QTestState *qtest =3D global_qtest; + + return qtest_readq(qtest, base + reg_addr); +} + +static void sdhci_writeq(uintptr_t base, uint32_t reg_addr, uint64_t value) +{ + QTestState *qtest =3D global_qtest; + + qtest_writeq(qtest, base + reg_addr, value); +} + static void check_specs_version(uintptr_t addr, uint8_t version) { uint32_t v; @@ -46,6 +61,20 @@ static void check_specs_version(uintptr_t addr, uint8_t = version) g_assert_cmpuint(v, =3D=3D, version); } =20 +static void check_capab_readonly(uintptr_t addr) +{ + const uint64_t vrand =3D 0x123456789abcdef; + uint64_t capab0, capab1; + + capab0 =3D sdhci_readq(addr, SDHC_CAPAB); + g_assert_cmpuint(capab0, !=3D, vrand); + + sdhci_writeq(addr, SDHC_CAPAB, vrand); + capab1 =3D sdhci_readq(addr, SDHC_CAPAB); + g_assert_cmpuint(capab1, !=3D, vrand); + g_assert_cmpuint(capab1, =3D=3D, capab0); +} + static void test_machine(const void *data) { const struct sdhci_t *test =3D data; @@ -53,6 +82,7 @@ static void test_machine(const void *data) global_qtest =3D qtest_startf("-machine %s -d unimp", test->machine); =20 check_specs_version(test->sdhci.addr, test->sdhci.version); + check_capab_readonly(test->sdhci.addr); =20 qtest_quit(global_qtest); } --=20 2.15.1 From nobody Fri Apr 26 07:07:37 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (208.118.235.17 [208.118.235.17]) by mx.zohomail.com with SMTPS id 1513217312092484.81983282722285; Wed, 13 Dec 2017 18:08:32 -0800 (PST) Received: from localhost ([::1]:38780 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIwa-0002oH-7v for importer@patchew.org; Wed, 13 Dec 2017 21:08:16 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53636) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIph-00063N-1n for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ePIpe-0003gI-0w for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:09 -0500 Received: from mail-qk0-x244.google.com ([2607:f8b0:400d:c09::244]:36204) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ePIpd-0003g1-TC for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:05 -0500 Received: by mail-qk0-x244.google.com with SMTP id 8so4496481qkj.3 for ; Wed, 13 Dec 2017 18:01:05 -0800 (PST) Received: from x1.local ([181.91.222.165]) by smtp.gmail.com with ESMTPSA id n39sm1938120qtn.95.2017.12.13.18.01.02 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Dec 2017 18:01:04 -0800 (PST) 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=2U13+tBtkU29oYvTI7Y3YPCodP8Dc+KuBt9J6Z2gYXk=; b=qeNwuHYw6oWbfRBJW4wdj/3tNto9D5wI0o7bmOZf9HATovJmMJaCTZyrJ3e58KEZPT mowMAOHJcMdd5MXWlrgFZXnFkxz/GCWRnsbtYy3bhH774XGksE7YHmwq5YS74rVZdqxB Fb08CfpJ0BfQa0QEQ7hEYJASZ7sSyAGqKtZJxCa8g8BYdipO7LqFC5/Jy68//yroZtRp tIy8/lM99D+lwh14PT5W4d0iKxWMBbg/uVFV/Kn/5p/PVPqFaBMCof7lnpPwZqIjyEMe z1fbg+n2SYcziHjN2AVtlJCyef5GxiWEAmu6C30MHjwWAfW2ZWSQnO1aBBA1H5p/etEc M3HA== 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=2U13+tBtkU29oYvTI7Y3YPCodP8Dc+KuBt9J6Z2gYXk=; b=JJVHE15d9/7hIxppPuMXvGcRItwNzeQcDrgNFIKNlRIy2pChBTEyBmmg4RUX67taAj +wmedTvvg1URl2Yf/jUqu7SSZix1R7S82v7ynd81MFncrON3xiyij37gMzSoWoMZMpqe VvLak75ijavpwdbgEZn/Nzr6Ryj6uySoRy2tKGlyHijgfIXPoyBQWvVIPN5mDMmY5e5s 7CbpYX/w4U+8D3xD3sVlGCY3Vr4omBAE58T94aMZCY9xMU68V5EErscYQl0qzJ4gjx68 UgWgcGUxEgh8TobhyexlyR4HfefXWts/aWJxdp+X1xOYNZU6v6MAKXKi0tanm/nSNRe0 NlcA== X-Gm-Message-State: AKGB3mLroE0v86+lQR0RwsRsM08UQAOoe7CrmVHkn2plFDHbwuhHZZjR 5swCgr7WQanMSf3+kokcP4fGZg0UwQc= X-Google-Smtp-Source: ACJfBotKS5KhaD5dfniOitajJm5R85Gldz35xu4G2T8fMILftdOHLeBzN+pKzpNy6CzAzmFvLQOH4A== X-Received: by 10.55.169.5 with SMTP id s5mr13977979qke.79.1513216865357; Wed, 13 Dec 2017 18:01:05 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Alistair Francis , "Edgar E . Iglesias" , Peter Maydell Date: Wed, 13 Dec 2017 23:00:23 -0300 Message-Id: <20171214020025.4004-7-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20171214020025.4004-1-f4bug@amsat.org> References: <20171214020025.4004-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::244 Subject: [Qemu-devel] [PATCH 6/8] sdhci: add a check_capab_baseclock() qtest 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: Sai Pavan Boddu , Prasad J Pandit , Peter Crosthwaite , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 So far only the bcm2835 is tested (52 MHz for the raspi2 machine). Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- I didn't dig the dark web enough to get the other datashits tests/sdhci-test.c | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/tests/sdhci-test.c b/tests/sdhci-test.c index 01373a69df..966bd00499 100644 --- a/tests/sdhci-test.c +++ b/tests/sdhci-test.c @@ -7,9 +7,11 @@ * See the COPYING file in the top-level directory. */ #include "qemu/osdep.h" +#include "hw/registerfields.h" #include "libqtest.h" =20 #define SDHC_CAPAB 0x40 +FIELD(SDHC_CAPAB, BASECLKFREQ, 8, 8); /* since v2 */ #define SDHC_HCVER 0xFE =20 static const struct sdhci_t { @@ -18,16 +20,17 @@ static const struct sdhci_t { struct { uintptr_t addr; uint8_t version; + uint8_t baseclock; } sdhci; } models[] =3D { { "arm", "smdkc210", - {0x12510000, 2} }, + {0x12510000, 2, 0} }, { "arm", "sabrelite", - {0x02190000, 3} }, + {0x02190000, 3, 0} }, { "arm", "raspi2", /* bcm2835 */ - {0x3f300000, 3} }, + {0x3f300000, 3, 52} }, { "arm", "xilinx-zynq-a9", /* exynos4210 */ - {0xe0100000, 3} }, + {0xe0100000, 3, 0} }, }; =20 static uint32_t sdhci_readl(uintptr_t base, uint32_t reg_addr) @@ -75,6 +78,18 @@ static void check_capab_readonly(uintptr_t addr) g_assert_cmpuint(capab1, =3D=3D, capab0); } =20 +static void check_capab_baseclock(uintptr_t addr, uint8_t expected_freq) +{ + uint64_t capab, capab_freq; + + if (!expected_freq) { + return; + } + capab =3D sdhci_readq(addr, SDHC_CAPAB); + capab_freq =3D FIELD_EX64(capab, SDHC_CAPAB, BASECLKFREQ); + g_assert_cmpuint(capab_freq, =3D=3D, expected_freq); +} + static void test_machine(const void *data) { const struct sdhci_t *test =3D data; @@ -83,6 +98,7 @@ static void test_machine(const void *data) =20 check_specs_version(test->sdhci.addr, test->sdhci.version); check_capab_readonly(test->sdhci.addr); + check_capab_baseclock(test->sdhci.addr, test->sdhci.baseclock); =20 qtest_quit(global_qtest); } --=20 2.15.1 From nobody Fri Apr 26 07:07:37 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1513217229419863.0198715864576; Wed, 13 Dec 2017 18:07:09 -0800 (PST) Received: from localhost ([::1]:38774 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIvS-0002Dm-QP for importer@patchew.org; Wed, 13 Dec 2017 21:07:06 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53652) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIpi-00063R-A6 for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ePIph-0003iI-Dl for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:10 -0500 Received: from mail-qt0-x244.google.com ([2607:f8b0:400d:c0d::244]:46532) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ePIph-0003hz-9q for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:09 -0500 Received: by mail-qt0-x244.google.com with SMTP id r39so6175603qtr.13 for ; Wed, 13 Dec 2017 18:01:09 -0800 (PST) Received: from x1.local ([181.91.222.165]) by smtp.gmail.com with ESMTPSA id n39sm1938120qtn.95.2017.12.13.18.01.05 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Dec 2017 18:01:08 -0800 (PST) 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=2vMEJoLymXZSgrSZOcEMquQhVlfXLXKe8i9/S4yQNgI=; b=a7eXjB/WnI6jA0c6ZL9k6gw1fEe5Lj26MFpkC+BrcsREDp0btzGQ6cHrJ3Q2AJAD7B aez0zTwXs3RJbXUJ76aoWjuGcBquoJmvrJewe/CtiHmHYz5piQecpGc/enCX8kIEJueo lTS3PAAV66HVhQ6Bh2z8kpUTgvbgoiBJHUrowIvkw8aLLcAsKAos7M7baszlIzU5mPxF lvmBwJr1aLGTSDmFUB2lwUsMozn8/0Cf2zjFVRIk+iFwS7TpG4f1knO+aR2cjGgQ1GZJ 29IYMJbDcyWBh04KOHfQYEal+rNR8IqfLNHMsfNa/MaFQoYm51z9bOh3/DiYIB9Tz/+c /wuw== 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=2vMEJoLymXZSgrSZOcEMquQhVlfXLXKe8i9/S4yQNgI=; b=Cioe3YdcImpr+Uv6X5bYXNRqw8TapYNj0RTutkkTS39tb8Byyw42ntLSSgbViMRJYJ Z9Se6ofF5Ivg1i+nBUJ6w8nRr6W65/z6REDoNBjikIwdjHl6S8/C2nOJ0qqWiZ3wrc8d 2l96EJJVRHI/8dehJB9iY13KD2hPRRTY5G0H/9HXEn8H62NalFbR2/fZ/BAo3d/Lrfwo JBZSfQlHSbCcZOYvt+2jFDCV4WBb0zyHVI+iME0OsrAcvil53VKUdqDweU/bCm8iROT+ qtLaPUOMkvbEDKoVMkEDCB7OGHya4C8Vff/7dfUxto5aJgxlz29mH1VALDLxF6EQGUn/ +KiA== X-Gm-Message-State: AKGB3mIrizrGxc7qy5JTEfHRgOYhN/aKSlI+4Wfe1L4yhnHU+PMBs5Be RLuXbJHuQcr2DP+Q8t4J8N4= X-Google-Smtp-Source: ACJfBoudjOWIIHWoNB95PSP9iE/V+4GiSOHdG2DU+obQtidb4QwUDanOf5bLH43S3RekOsLJtrR4Zg== X-Received: by 10.200.53.139 with SMTP id k11mr14101425qtb.77.1513216868681; Wed, 13 Dec 2017 18:01:08 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Alistair Francis , "Edgar E . Iglesias" , Peter Maydell Date: Wed, 13 Dec 2017 23:00:24 -0300 Message-Id: <20171214020025.4004-8-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20171214020025.4004-1-f4bug@amsat.org> References: <20171214020025.4004-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::244 Subject: [Qemu-devel] [RFC PATCH 7/8] sdhci: add a check_capab_sdma() qtest 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: Sai Pavan Boddu , Prasad J Pandit , Peter Crosthwaite , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- RFC because I still need to verify with DS. tests/sdhci-test.c | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/tests/sdhci-test.c b/tests/sdhci-test.c index 966bd00499..b7646bccc6 100644 --- a/tests/sdhci-test.c +++ b/tests/sdhci-test.c @@ -12,6 +12,7 @@ =20 #define SDHC_CAPAB 0x40 FIELD(SDHC_CAPAB, BASECLKFREQ, 8, 8); /* since v2 */ +FIELD(SDHC_CAPAB, SDMA, 22, 1); #define SDHC_HCVER 0xFE =20 static const struct sdhci_t { @@ -21,16 +22,19 @@ static const struct sdhci_t { uintptr_t addr; uint8_t version; uint8_t baseclock; + struct { + bool sdma; + } capab; } sdhci; } models[] =3D { { "arm", "smdkc210", - {0x12510000, 2, 0} }, + {0x12510000, 2, 0, {1} } }, { "arm", "sabrelite", - {0x02190000, 3, 0} }, + {0x02190000, 3, 0, {1} } }, { "arm", "raspi2", /* bcm2835 */ - {0x3f300000, 3, 52} }, + {0x3f300000, 3, 52, {0} } }, { "arm", "xilinx-zynq-a9", /* exynos4210 */ - {0xe0100000, 3, 0} }, + {0xe0100000, 3, 0, {1} } }, }; =20 static uint32_t sdhci_readl(uintptr_t base, uint32_t reg_addr) @@ -90,6 +94,15 @@ static void check_capab_baseclock(uintptr_t addr, uint8_= t expected_freq) g_assert_cmpuint(capab_freq, =3D=3D, expected_freq); } =20 +static void check_capab_sdma(uintptr_t addr, bool supported) +{ + uint64_t capab, capab_sdma; + + capab =3D sdhci_readq(addr, SDHC_CAPAB); + capab_sdma =3D FIELD_EX64(capab, SDHC_CAPAB, SDMA); + g_assert_cmpuint(capab_sdma, =3D=3D, supported); +} + static void test_machine(const void *data) { const struct sdhci_t *test =3D data; @@ -98,6 +111,7 @@ static void test_machine(const void *data) =20 check_specs_version(test->sdhci.addr, test->sdhci.version); check_capab_readonly(test->sdhci.addr); + check_capab_sdma(test->sdhci.addr, test->sdhci.capab.sdma); check_capab_baseclock(test->sdhci.addr, test->sdhci.baseclock); =20 qtest_quit(global_qtest); --=20 2.15.1 From nobody Fri Apr 26 07:07:37 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1513217169123601.9167003065446; Wed, 13 Dec 2017 18:06:09 -0800 (PST) Received: from localhost ([::1]:38766 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIuP-0001Sr-Uz for importer@patchew.org; Wed, 13 Dec 2017 21:06:02 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53683) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ePIpl-00064V-Cb for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:14 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ePIpk-0003kX-K7 for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:13 -0500 Received: from mail-qt0-x244.google.com ([2607:f8b0:400d:c0d::244]:39976) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ePIpk-0003kG-Fq for qemu-devel@nongnu.org; Wed, 13 Dec 2017 21:01:12 -0500 Received: by mail-qt0-x244.google.com with SMTP id u42so6208749qte.7 for ; Wed, 13 Dec 2017 18:01:12 -0800 (PST) Received: from x1.local ([181.91.222.165]) by smtp.gmail.com with ESMTPSA id n39sm1938120qtn.95.2017.12.13.18.01.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Dec 2017 18:01:11 -0800 (PST) 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=X0bQn7z+PaZ5TjJcJ6dVLWpvAeJC2iznautj+bGfUrk=; b=JlFJh0rzEtAXP/RH49s15l/0U/R7qlvMc3oMlOfEK+WPJWLuOeNwt10MeQ0qkCCLQ2 l+rvD9q0Y939hbk1nBuDAiUAVYeCdsEhkFZsSt5ZKTdmVkLlOTwqqDyNId/0XIAkzVtf Hh/i1hhROTXFwkXBPJdxoCn2+ylPM79UVJFbCooDyBmPvHoCy1Xa6YB7upRaV6UtRfqJ zHHmTtG5m137ytAXS4NKaI6c9z99B/NwgeDn9OLYmcWxXJsL4AKjFmMbGIG8z6zhOA7S nce2CQOD9eB+GUfD9dzze2m/9uQvjkzdXOS6jEK473NdxIAWVKauQZq40CdaquZ8IxX4 m1Wg== 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=X0bQn7z+PaZ5TjJcJ6dVLWpvAeJC2iznautj+bGfUrk=; b=mmu/ITGbzAAQ1Py+c8copBmx+oE/OWUXytozHP8iRBP7YHfbzeWdXPZ8916acbAhsL YPBZXdQ3RfpDyU0Yfj7aoOzCjD34OiFKZItCMo5rPqWLmPLpWjZTxlRDn3ALRPW3FNZ6 8hK1Mw3KKxsTavISxFhtqeu14hZiBaCdkbG5O1Vn5uHL+U6RUukfjQxKQHRduFo8bJHv yuPPxTobaISpTt/q4hx7SFjZTLdnt5rNfYDpUTK0VDX9e3CHaLH1HVOUdWvArKy5ozKp 2jhKQua3oXbB2ZmzIZEGHsr0nXLuZOfrHe5sHBrzUnivC0Pw8qLOMet4fY+Ia9cMYUO5 W2Yg== X-Gm-Message-State: AKGB3mId5xwSOt3cJnoVK0JdrErGOhvr5M+V4HQ0siLIlRhoZ4s7Q5Pu paev/3zjRWYkRo39LNY7fh0= X-Google-Smtp-Source: ACJfBouqYhYHZubBfXZ8P+OTt4bccxAfZam5iSwg1v4HkiKgdUP1VQd89490URCZlM3uYccpAb4zqw== X-Received: by 10.200.38.74 with SMTP id v10mr14364492qtv.316.1513216871975; Wed, 13 Dec 2017 18:01:11 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Alistair Francis , "Edgar E . Iglesias" , Peter Maydell Date: Wed, 13 Dec 2017 23:00:25 -0300 Message-Id: <20171214020025.4004-9-f4bug@amsat.org> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20171214020025.4004-1-f4bug@amsat.org> References: <20171214020025.4004-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::244 Subject: [Qemu-devel] [PATCH 8/8] sdhci: add a check_capab_v3() qtest 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: Sai Pavan Boddu , Prasad J Pandit , Peter Crosthwaite , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- tests/sdhci-test.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/tests/sdhci-test.c b/tests/sdhci-test.c index b7646bccc6..60b28f27b3 100644 --- a/tests/sdhci-test.c +++ b/tests/sdhci-test.c @@ -13,6 +13,8 @@ #define SDHC_CAPAB 0x40 FIELD(SDHC_CAPAB, BASECLKFREQ, 8, 8); /* since v2 */ FIELD(SDHC_CAPAB, SDMA, 22, 1); +FIELD(SDHC_CAPAB, SDR, 32, 3); /* since v3 */ +FIELD(SDHC_CAPAB, DRIVER, 36, 3); /* since v3 */ #define SDHC_HCVER 0xFE =20 static const struct sdhci_t { @@ -103,6 +105,21 @@ static void check_capab_sdma(uintptr_t addr, bool supp= orted) g_assert_cmpuint(capab_sdma, =3D=3D, supported); } =20 +static void check_capab_v3(uintptr_t addr, uint8_t version) +{ + uint64_t capab, capab_v3; + + if (version >=3D 3) { + return; + } + /* before v3 those fields are RESERVED */ + capab =3D sdhci_readq(addr, SDHC_CAPAB); + capab_v3 =3D FIELD_EX64(capab, SDHC_CAPAB, SDR); + g_assert_cmpuint(capab_v3, =3D=3D, 0); + capab_v3 =3D FIELD_EX64(capab, SDHC_CAPAB, DRIVER); + g_assert_cmpuint(capab_v3, =3D=3D, 0); +} + static void test_machine(const void *data) { const struct sdhci_t *test =3D data; @@ -111,6 +128,7 @@ static void test_machine(const void *data) =20 check_specs_version(test->sdhci.addr, test->sdhci.version); check_capab_readonly(test->sdhci.addr); + check_capab_v3(test->sdhci.addr, test->sdhci.version); check_capab_sdma(test->sdhci.addr, test->sdhci.capab.sdma); check_capab_baseclock(test->sdhci.addr, test->sdhci.baseclock); =20 --=20 2.15.1