From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741469923; cv=none; d=zohomail.com; s=zohoarc; b=Q7xwDSpjiLDWWFDiOGKnv9rzKoTnXkGWOrReJzAHWqviLRz/zu6+1CX2rlUVSZOFMAA0Q1QVwHDxzq251Dh8BqQTT9hI0iIWZ6XdygJGnCnp6bon3SbzOneqcbwzmdAhQYbvtFZY7P1I85PMKjfk85XilzH+tVNJ9TTP5ysMq6U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741469923; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=WDbWzQ3TRhfqcCdGrWE6Ka+gW+QxOu8dbIYkiLZFWgQ=; b=B6VJSpBHrnujkVzGWyHKLoz51hMJ1aiPOswuse2OwU3wXMiav33w9K+6Dy6uYCHI9f75xYFq47oRuH3tHDsHkfHUofqyfYoRGmRglGOtna8DMrKUGMKSko4I8ukQtHmSO/DEpRZroJ9uQMQv+W2R6YVaIz7XunGRXqpRBJo9B/U= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741469923454967.4672325928111; Sat, 8 Mar 2025 13:38:43 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1r8-0005VD-5Z; Sat, 08 Mar 2025 16:37:14 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1qn-0005L0-44 for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:36:55 -0500 Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1qk-0003re-CG for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:36:52 -0500 Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-43bcb1a9890so25212345e9.0 for ; Sat, 08 Mar 2025 13:36:49 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43bdd8c3aa8sm94423005e9.14.2025.03.08.13.36.47 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:36:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469808; x=1742074608; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WDbWzQ3TRhfqcCdGrWE6Ka+gW+QxOu8dbIYkiLZFWgQ=; b=UC18KpIMYVewhQMRLfuFu9ytC+o5y2jG91K7piSEqDd08VVSLkqv2xTt0AmXhAtudp JDm6nyFYyXHW75GnxsI/1YrOMO+T/Lgc+M6HygKnYZPceffVf9yIxQV7nFsrWaWNik4y OY3FeIGUKT3Ync+K/RhVdda+hzqLrD8W+VMIfJ1AO05A9GrcU64+3Syra+6eUMhxT6wd iz6zO9eCsqUFQyHMf0uxxnUth++UuT1WQd+Lgox9VB6XcjlSL6FFFXby1tuwYf7SsZiW Jc6DJMOH9V/rLGeSEWlIbI9qroW8clC0IeG/adR8+XsPFoWb1/R7bYPVI1aQI5lzjDKn h4IQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469808; x=1742074608; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WDbWzQ3TRhfqcCdGrWE6Ka+gW+QxOu8dbIYkiLZFWgQ=; b=O5pJ7U/EA2eKHrhD6rdkxTCMGlvfE09TFWn5qdhxK1H4MUGqjnqweA/zMmUfZ1AbcJ rpZ1QAtXxHsDJSa5YBmti5jx571RMoKDpJ15wq+x0B/ywMmygQfjyXbfbuAB7k+xqfxh udYzUf6NqQxALA5HzFLa22MLBRoSycKNQXBwjp20LDAaDk1mr+vWWLmaxwrXFjs7AOl4 oCcl94L5ZZlgKudRMwTILfD+QQKET103G10nS2tmZOjuxRxMCS2SdPHZQkXi+bakCjiJ HQG2XOjvp2m6UlyNAlE5V6D+G+NCR6VMW3Nxgp2fasBPk1ADVz7uEDk9NY1r8J2eEsDr MwoQ== X-Gm-Message-State: AOJu0Yyab92xyt1OpbyYKcAnv7+uWTEs3VfRQ96nuTbioO0i/FGlXWZ4 8vNqkqgBJQW4hgcwXynUwj6S9NJ6SLvFczIA6584Ocb7U/0RqyCcpp7IyHOxlEJZWZNfasxU3SR Q4CY= X-Gm-Gg: ASbGncu6Px5r95RNqPdLi7s9UfwPe/XPrelJdgaRovG9o0ZEEnpOx+05ZaEFO25FNCu XDnWIIGpbbARRkrEuA90YZQPEInijyI5W9WdH65Cs1gMdSW+GFST4tsE149FHhjj6G05XNNl1nZ 1cvEMmEEYYJBXhoyIgGT1HlRJW0alUPYeJ7xeey+9Rh1NlxdPv69oq4tUBtgMSWJSGSFptSRTzm rBPgflDj2mTLvj7L7VRmH8knWN2o6eDHP6NbP6QlK8+N5uTPUNrsULKutmxbyeGXVXMxc395Snq t/qO6lAXHXzU/dbxTpG8tiRJkpyPwcVbCe6yQ5IXebCI5no56eOUaeroCqkYVhPV9gaDCgvnosS M2oF7Devyf2Ehi2Km5ts= X-Google-Smtp-Source: AGHT+IGnHHKeLWtUVROrKEBh77/wkdwi5mUuQkbzLLLH8kGd6zryfIT/NzmfA19wV1zXQgjuSP/SrQ== X-Received: by 2002:a05:600c:3b0d:b0:43b:c7f0:6173 with SMTP id 5b1f17b1804b1-43ce4ac7369mr24625595e9.4.1741469808250; Sat, 08 Mar 2025 13:36:48 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 01/14] hw/qdev-properties-system: Include missing 'qapi/qapi-types-common.h' Date: Sat, 8 Mar 2025 22:36:27 +0100 Message-ID: <20250308213640.13138-2-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32c; envelope-from=philmd@linaro.org; helo=mail-wm1-x32c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741469925558019100 DEFINE_PROP_ENDIAN_NODEFAULT() macro uses ENDIAN_MODE_UNSPECIFIED which is defined in "qapi/qapi-types-common.h". Fixes: 4ec96630f93 ("hw/qdev-properties-system: Introduce EndianMode QAPI e= num") Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/qdev-properties-system.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/hw/qdev-properties-system.h b/include/hw/qdev-properti= es-system.h index b921392c525..49a3825eb46 100644 --- a/include/hw/qdev-properties-system.h +++ b/include/hw/qdev-properties-system.h @@ -1,6 +1,7 @@ #ifndef HW_QDEV_PROPERTIES_SYSTEM_H #define HW_QDEV_PROPERTIES_SYSTEM_H =20 +#include "qapi/qapi-types-common.h" #include "hw/qdev-properties.h" =20 bool qdev_prop_sanitize_s390x_loadparm(uint8_t *loadparm, const char *str, --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741469927; cv=none; d=zohomail.com; s=zohoarc; b=gvsivTOUAhwuGHPxZmk0rua0b8UToU7HS0CBIZqAR9/yDKETVgoPShBdmFX4kjOwhU+so5CpKzRdyQbgg7ztWtVfSDEi3nWL8vmA7uavOOydzZUS/FGY6dnBpC5sHRLew8wH0wN8CK1vIobdOlrdGApRn9qfyJw/mG36lKO8f+o= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741469927; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=F+yC7kcIFYBDlEb5elpDYxZqmpjHBPCkNQfWZnM7SA0=; b=mtUKQdU9C/4BlP064AMcD+om7fHDWP9wzuSOBkTkI7z9xqj6BITPp5ooh/TqhOaca+Ai7m8Zg9m7SzW4C3bxaoQG6ZKqnIhM8NYA9L5ZwFEZ7RC82smeIUj5RNRb8Yqk6FtC/oHMP3qZZA+MYl6zy1FtBheRAMRI98mk5clnaNw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741469927631129.9685522802272; Sat, 8 Mar 2025 13:38:47 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1ro-0005mb-VA; Sat, 08 Mar 2025 16:38:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1qs-0005Mf-0l for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:36:59 -0500 Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1qp-0003sM-6A for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:36:57 -0500 Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-43bc30adad5so17910095e9.1 for ; Sat, 08 Mar 2025 13:36:54 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3912c0e3250sm9966420f8f.61.2025.03.08.13.36.52 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:36:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469813; x=1742074613; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=F+yC7kcIFYBDlEb5elpDYxZqmpjHBPCkNQfWZnM7SA0=; b=BjCbZPjCwiRdfpWd2AJ8TCcOhjpi8MKu7taByejvKxvlnbmv4QiHkaqKXziS72QewF bPIvVg6V+V8rFOHbCOgL7rO69AX4wWBzagddevAw+0d4xXA2r9PX187OCs7T4p6jMcYI /7Z8doYz1PAjpqdzRyjMwrsxSc74bKbijphEsc7G54NzXVC+YpxF64ZoXV3/+H/zYCj1 0GOMCDJeBV+sel9BFRF6JoQLcm2GPIK1JvW8ursl+CJ3ZsFBqlWyHMa+CJGKrxEU4wMu bZVBNRoUYqVKGEdzrZ6pYMNhkEpJO2vNETrs/CnUu25hnt9N3JI7ytQsm5Vm9KQeTtl8 N1rg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469813; x=1742074613; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=F+yC7kcIFYBDlEb5elpDYxZqmpjHBPCkNQfWZnM7SA0=; b=evxl20X8u/mRQ0da7z4USmXPJtaKn5ZGYAJJJMVQC1yr2UESEDyVDzA41cUNjqcDmT dycMiecsWHLbhMUiYzs2NhrjhpM31ihFUFs18E8jqE0yQmC4aexi2HcoIXJFPjNcCBJy yk90iHD2QKQ0cUPHNYhEinifd7gK01W+r0WbilroZf9lexJdZUaPj+9D9aE43DKgAj5J ZmePvikQhuaWBWj/zIkdOTnZJUbrE4VUfh7X3TccXtJSdYvV5fBlnGF2kqquK+qR9wc8 +ViRtgPoIVeebbAnfMarRuPIVJlByVjc1qnJFx1r1JwE7riSSueqKmTUlK02SclHA/am YSFg== X-Gm-Message-State: AOJu0YxONpxILVHG38bb1Pbsc0eKB2+16vSe39pG389zZiztTgXNwcgg jWdtELIe9lYrIee2CiHFiZF9WO/0WCsW/bZfOKOfEaKTS9EOQ7I+ZJkHe2hof8eNBvfYG5QB9ol lLCs= X-Gm-Gg: ASbGncuL/NITF98OEr8D0YsYkWhKIhRelqyojqsT/U0g5pQXFQWCGomuRvSLfyk+wPl S7PWzxVFnAInyRV9iFZVoA16pRTencD1B5xsXvxy8u6ISkQuGgxAjaUnUFmxZDG+cNSd6XIw4G2 bKDXhgzHin4dTw/3xqE6awbve7QcCURTFp1cFUOFe3BzYjPbixiZ0oq94WY5DNjKbRne/t6o50t JaVmtLlze/shPNqpDCzICP0fqdUZhBnd4PmLOKtiCXR0WcVVb7kykxfLaBIi/rdUpbnC1lQPvDl A05z3Wq9p4FVIgbo51YfP+528OadvrTl5ZFgGC2FRXKAlQTRFUHi2Ayv+dbXURpL6aeaPQB3JqS gE0XJeijN+/mCokPYT+oNd2fYuNF/kA== X-Google-Smtp-Source: AGHT+IFHjkrBjNK+vU42cXFq1l4E4fzb+I1phPIj62EvXzGL93tqo+Sx7Ik+APXV8YAiPb6fOS8khA== X-Received: by 2002:a05:600c:4fc8:b0:43c:e9f7:d6a3 with SMTP id 5b1f17b1804b1-43ce9f7da7emr21678035e9.13.1741469813197; Sat, 08 Mar 2025 13:36:53 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 02/14] hw/sd/sdhci: Remove need for SDHCIState::vendor field Date: Sat, 8 Mar 2025 22:36:28 +0100 Message-ID: <20250308213640.13138-3-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32b; envelope-from=philmd@linaro.org; helo=mail-wm1-x32b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741469929353019000 All instances of TYPE_IMX_USDHC set vendor=3DSDHCI_VENDOR_IMX. No need to special-case it. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: BALATON Zoltan Reviewed-by: Bernhard Beschow --- hw/sd/sdhci-internal.h | 1 - include/hw/sd/sdhci.h | 4 ---- hw/arm/fsl-imx25.c | 2 -- hw/arm/fsl-imx6.c | 2 -- hw/arm/fsl-imx6ul.c | 2 -- hw/arm/fsl-imx7.c | 2 -- hw/arm/fsl-imx8mp.c | 2 -- hw/sd/sdhci.c | 14 ++++---------- 8 files changed, 4 insertions(+), 25 deletions(-) diff --git a/hw/sd/sdhci-internal.h b/hw/sd/sdhci-internal.h index 9f768c418e0..9072b06bdde 100644 --- a/hw/sd/sdhci-internal.h +++ b/hw/sd/sdhci-internal.h @@ -311,7 +311,6 @@ extern const VMStateDescription sdhci_vmstate; DEFINE_PROP_UINT8("endianness", _state, endianness, DEVICE_LITTLE_ENDI= AN), \ DEFINE_PROP_UINT8("sd-spec-version", _state, sd_spec_version, 2), \ DEFINE_PROP_UINT8("uhs", _state, uhs_mode, UHS_NOT_SUPPORTED), \ - DEFINE_PROP_UINT8("vendor", _state, vendor, SDHCI_VENDOR_NONE), \ \ /* Capabilities registers provide information on supported * features of this specific host controller implementation */ \ diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index 38c08e28598..48247e9a20f 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -99,7 +99,6 @@ struct SDHCIState { uint8_t endianness; uint8_t sd_spec_version; uint8_t uhs_mode; - uint8_t vendor; /* For vendor specific functionality */ /* * Write Protect pin default active low for detecting SD card * to be protected. Set wp_inverted to invert the signal. @@ -108,9 +107,6 @@ struct SDHCIState { }; typedef struct SDHCIState SDHCIState; =20 -#define SDHCI_VENDOR_NONE 0 -#define SDHCI_VENDOR_IMX 1 - /* * Controller does not provide transfer-complete interrupt when not * busy. diff --git a/hw/arm/fsl-imx25.c b/hw/arm/fsl-imx25.c index 5359a6d8d3b..02214ca1a1c 100644 --- a/hw/arm/fsl-imx25.c +++ b/hw/arm/fsl-imx25.c @@ -243,8 +243,6 @@ static void fsl_imx25_realize(DeviceState *dev, Error *= *errp) &error_abort); object_property_set_uint(OBJECT(&s->esdhc[i]), "capareg", IMX25_ESDHC_CAPABILITIES, &error_abort); - object_property_set_uint(OBJECT(&s->esdhc[i]), "vendor", - SDHCI_VENDOR_IMX, &error_abort); if (!sysbus_realize(SYS_BUS_DEVICE(&s->esdhc[i]), errp)) { return; } diff --git a/hw/arm/fsl-imx6.c b/hw/arm/fsl-imx6.c index dc86338b3a5..a114dc0d63d 100644 --- a/hw/arm/fsl-imx6.c +++ b/hw/arm/fsl-imx6.c @@ -327,8 +327,6 @@ static void fsl_imx6_realize(DeviceState *dev, Error **= errp) &error_abort); object_property_set_uint(OBJECT(&s->esdhc[i]), "capareg", IMX6_ESDHC_CAPABILITIES, &error_abort); - object_property_set_uint(OBJECT(&s->esdhc[i]), "vendor", - SDHCI_VENDOR_IMX, &error_abort); if (!sysbus_realize(SYS_BUS_DEVICE(&s->esdhc[i]), errp)) { return; } diff --git a/hw/arm/fsl-imx6ul.c b/hw/arm/fsl-imx6ul.c index 34c4aa15cd0..ce8d3ef535f 100644 --- a/hw/arm/fsl-imx6ul.c +++ b/hw/arm/fsl-imx6ul.c @@ -531,8 +531,6 @@ static void fsl_imx6ul_realize(DeviceState *dev, Error = **errp) FSL_IMX6UL_USDHC2_IRQ, }; =20 - object_property_set_uint(OBJECT(&s->usdhc[i]), "vendor", - SDHCI_VENDOR_IMX, &error_abort); sysbus_realize(SYS_BUS_DEVICE(&s->usdhc[i]), &error_abort); =20 sysbus_mmio_map(SYS_BUS_DEVICE(&s->usdhc[i]), 0, diff --git a/hw/arm/fsl-imx7.c b/hw/arm/fsl-imx7.c index 3374018cde0..ed1f10bca26 100644 --- a/hw/arm/fsl-imx7.c +++ b/hw/arm/fsl-imx7.c @@ -471,8 +471,6 @@ static void fsl_imx7_realize(DeviceState *dev, Error **= errp) FSL_IMX7_USDHC3_IRQ, }; =20 - object_property_set_uint(OBJECT(&s->usdhc[i]), "vendor", - SDHCI_VENDOR_IMX, &error_abort); sysbus_realize(SYS_BUS_DEVICE(&s->usdhc[i]), &error_abort); =20 sysbus_mmio_map(SYS_BUS_DEVICE(&s->usdhc[i]), 0, diff --git a/hw/arm/fsl-imx8mp.c b/hw/arm/fsl-imx8mp.c index 1ea98e14635..c3f6da63220 100644 --- a/hw/arm/fsl-imx8mp.c +++ b/hw/arm/fsl-imx8mp.c @@ -524,8 +524,6 @@ static void fsl_imx8mp_realize(DeviceState *dev, Error = **errp) { fsl_imx8mp_memmap[FSL_IMX8MP_USDHC3].addr, FSL_IMX8MP_USDHC3= _IRQ }, }; =20 - object_property_set_uint(OBJECT(&s->usdhc[i]), "vendor", - SDHCI_VENDOR_IMX, &error_abort); if (!sysbus_realize(SYS_BUS_DEVICE(&s->usdhc[i]), errp)) { return; } diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 1f45a77566c..149b748cbee 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1731,16 +1731,10 @@ usdhc_write(void *opaque, hwaddr offset, uint64_t v= al, unsigned size) =20 case USDHC_VENDOR_SPEC: s->vendor_spec =3D value; - switch (s->vendor) { - case SDHCI_VENDOR_IMX: - if (value & USDHC_IMX_FRC_SDCLK_ON) { - s->prnsts &=3D ~SDHC_IMX_CLOCK_GATE_OFF; - } else { - s->prnsts |=3D SDHC_IMX_CLOCK_GATE_OFF; - } - break; - default: - break; + if (value & USDHC_IMX_FRC_SDCLK_ON) { + s->prnsts &=3D ~SDHC_IMX_CLOCK_GATE_OFF; + } else { + s->prnsts |=3D SDHC_IMX_CLOCK_GATE_OFF; } break; =20 --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741469927; cv=none; d=zohomail.com; s=zohoarc; b=MKxYaX9xG1C1ywutqE1kAE9YlE8UKMJWdactKHY3Hy37kE1ns0wg/Y6lkDnMPYv0KpSnIKxn2QEyf4eA0OZp2ES2+yCiiVNAkRE3Jv3vUOYmi1KIXBcsyuD77H20bB9jkDxU6/RzFLyhfPZ7fBj0E/3XMiH3210rM3ruwSsI/8k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741469927; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=rGeGYkd/RvTeD7MNw4buaroHbkJmR8tAE2eHN3vxKfs=; b=hfVuqXSplzJ3c/tIcsOhMZX1bb7pVpOhWJ3Zeoe3n0gnvgghOHUFQ6Ov8da/8r2r6CtWvGG5p0jhO460FJMq9LwJq1/RGIg/BFjt+hz+KuYKglnqwKelLQciJZXOpMNnL2Q+b4Nc3M71KMVXacvAUXDFBjWJ+V1KLZJReZB0iZ4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 174146992790068.43828202207362; Sat, 8 Mar 2025 13:38:47 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1sI-0006S1-Qr; Sat, 08 Mar 2025 16:38:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1qw-0005OZ-95 for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:05 -0500 Received: from mail-wr1-x42e.google.com ([2a00:1450:4864:20::42e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1qt-0003tO-UE for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:01 -0500 Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-391211ea598so1779843f8f.1 for ; Sat, 08 Mar 2025 13:36:59 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43cec487fb2sm22294015e9.37.2025.03.08.13.36.56 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:36:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469818; x=1742074618; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rGeGYkd/RvTeD7MNw4buaroHbkJmR8tAE2eHN3vxKfs=; b=gjUlNPWTugBQD2cSA/a8U99zncJYPIx7pHUmrDsBWEia16XmZzrqrYD3L3NwzAb7wO cpuLwJ9oss1pmskcInwY3WSkVbeDY3GCkyqncZn9jzAboznTO55DClQt2odWLBSIhILO LVlYlliwnfjPPeBr6O3N/9UMHk7j8ZKAFERBBlDoNpdtgfuOXRYeCZOWroCpzR0zqESA vfniYH6+Di9Yllibfz7Atl/CzAP87eeFezzLLj40NALR+UWKVKCI1heWgpFDdvSFFuyP Cox7Gt2WBiW1aDixSU/CiWuyNkHMRGAm9o6+s/Op+BqnpXXE/wdbAT9ggRS318+Vulot dbTg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469818; x=1742074618; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rGeGYkd/RvTeD7MNw4buaroHbkJmR8tAE2eHN3vxKfs=; b=Py1+b6r3CaCCSCM5kGwe5qfVT07JWm/83KSgtllXglifskbEG+XhjzhN1ilLb/Dgnw VSTjZH/4bykm0gzlVLR0Ys7C+cDZ+TAmygEWEjMnaCSTdlJV8QS6HIimnicfaGvcxBT7 uDNE/qlgNIYoeCJAw7/mI9R0auAdjT7+4zb+iAmaQ4Q6NtUeW93ZNGBoyW6V5sIQGh/k qy8z2YjJKOjzx4P8B4LjnP9ecWQH1S9GctkjuTUVC8Pwd/0G6KoMtrXIFQvJEBx1WAVw psPVg205VzkDHaimxt5anXI8dXdV8rToNpwcOcsRz0X75+eyUpCxZ/m9l25ndDuKL/F2 Ya+g== X-Gm-Message-State: AOJu0YyPzMru2AZYYqwi6av7lRugapWwzyrG+7H5QS97hThsbTrrZtEg vxadcXTv2dNX9OyCmOOxjedXysK/8CDw4jCzB0HhYEBC2TrJxgIp47r902DMkTHVKqbMhmm3Mtk v8po= X-Gm-Gg: ASbGnctGH2525WdoovVetdFxnEM2ei37hs4NTm7pHhZMJiioTGIvHgFcEPEpYcqUzOk dHUqeQ/EvwL0wCPeg0o2F5s/auvOD9B5EjPrt9fCqopxKjzbdTt+p/ZedUPL1G2MfTzTbG5eQdI CqOydnhiFyYhRGPgFrIggRjPjalj0bFlk2qYO6g5UHlv6DQPp9DMmSU45Tg57b1WoZIaIP8/y5N TGsuOY6b6Rp89gVBU6LHhGUcY0J5XT9qOquGWJK4d6Dz2UUqgJljwekSbBIGKkI7IuWsPHDQJEA BRIsV+79Re5T5+2/3knZIWxrPqy9oABy9oL///w82Ty5NGy1cQU8LKqp1wB01W5ygXru+X3Ll1T bJJj5araPXjLdMJsFy30= X-Google-Smtp-Source: AGHT+IEMElLuqeiItqUCxw1e5NAlsbPttD3M/bUUMRwKrRzuyDY9g0B8F0IaoP3gDh51ZBP70hYdBQ== X-Received: by 2002:a5d:5987:0:b0:391:2bab:d2fd with SMTP id ffacd0b85a97d-39132da96c9mr5536253f8f.37.1741469817935; Sat, 08 Mar 2025 13:36:57 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 03/14] hw/sd/sdhci: Introduce SDHCIClass stub Date: Sat, 8 Mar 2025 22:36:29 +0100 Message-ID: <20250308213640.13138-4-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42e; envelope-from=philmd@linaro.org; helo=mail-wr1-x42e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741469929265019000 TYPE_SYSBUS_SDHCI is a bit odd because it uses an union to work with both SysBus / PCI parent. As this is not a normal use, introduce SDHCIClass in its own commit. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/sd/sdhci.h | 9 +++++++++ hw/sd/sdhci.c | 1 + 2 files changed, 10 insertions(+) diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index 48247e9a20f..c4b20db3877 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -107,6 +107,13 @@ struct SDHCIState { }; typedef struct SDHCIState SDHCIState; =20 +typedef struct SDHCIClass { + union { + PCIDeviceClass pci_parent_class; + SysBusDeviceClass sbd_parent_class; + }; +} SDHCIClass; + /* * Controller does not provide transfer-complete interrupt when not * busy. @@ -123,6 +130,8 @@ DECLARE_INSTANCE_CHECKER(SDHCIState, PCI_SDHCI, #define TYPE_SYSBUS_SDHCI "generic-sdhci" DECLARE_INSTANCE_CHECKER(SDHCIState, SYSBUS_SDHCI, TYPE_SYSBUS_SDHCI) +DECLARE_CLASS_CHECKERS(SDHCIClass, SYSBUS_SDHCI, + TYPE_SYSBUS_SDHCI) =20 #define TYPE_IMX_USDHC "imx-usdhc" =20 diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 149b748cbee..4917a9b3632 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1960,6 +1960,7 @@ static const TypeInfo sdhci_types[] =3D { .instance_size =3D sizeof(SDHCIState), .instance_init =3D sdhci_sysbus_init, .instance_finalize =3D sdhci_sysbus_finalize, + .class_size =3D sizeof(SDHCIClass), .class_init =3D sdhci_sysbus_class_init, }, { --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741469952; cv=none; d=zohomail.com; s=zohoarc; b=WZ+JUJa7W07L6071pRKQ+LR5BsJVa/ev7dm5MxZHw42bnZKOKmcM2uJ/D1FqkKfdTfJGprw5krCEkMUeT6q31HL2uEVJGMfESWa00OUHh7wu2ubED/7oJBZiN57v1GWP9aD68aqqoEXjul3okxT3Ubt6k4dOJDvV/5OWknlZe8A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741469952; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=B/DAOjgGSbt8R5XFJfa90IfAIHW3vg/xwsnsSI4jCJ0=; b=ZtwPFtrwg7T6IwC+r+JhTiygjqS2duYubt+Bo0btgehyfc8HjP877D9JDouNh3oVnMyBYvHhpx0yezJrnEw6lbdJ/oQ6pp8r1fI1JQ//+SlYVlx95aZkIYg0SHWRI/4S788Cwc99ZKouovflreFn0Kbs48cJgJRX4gdQ5HbrOyQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741469952047136.2003354899523; Sat, 8 Mar 2025 13:39:12 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1sP-0006b6-N5; Sat, 08 Mar 2025 16:38:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1r2-0005QV-5f for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:10 -0500 Received: from mail-wr1-x435.google.com ([2a00:1450:4864:20::435]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1qz-0003uC-9Z for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:07 -0500 Received: by mail-wr1-x435.google.com with SMTP id ffacd0b85a97d-390f5f48eafso1530200f8f.0 for ; Sat, 08 Mar 2025 13:37:04 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3912c0e4065sm10069393f8f.62.2025.03.08.13.37.01 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469823; x=1742074623; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=B/DAOjgGSbt8R5XFJfa90IfAIHW3vg/xwsnsSI4jCJ0=; b=RgjmaF5oNLjV3aADvkVb4Oivfd9lH385d2iELV7/mFe+rCX+/kiqo9+qlkmjtoeBc3 1H5u0SGSTWC5FedmTaOUP+RdR3Q879Q7TATAZWU3eRJLHl231NCganIYa5E+l3wduEqW NZPcrpLpBZ9ARZ3zswNjA2ye8bMJB//grtbegSQ/CfzslGVjqELLimxrwD/sS2FOC2tt 3zNKio/yoUKikjv6sXuaYZA6bEbPMM8JDTDlFk28bCQ8AnLn7bO80SdtMagtnvE6/ZZz 766lsfzOnOb4YbkktruvCx+0I/syoIs99mXGXC5/DS52KBbykmtHG6zRy1S46lm2AcpI SU1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469823; x=1742074623; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=B/DAOjgGSbt8R5XFJfa90IfAIHW3vg/xwsnsSI4jCJ0=; b=TRHu8xfDGTbsXsb344aNBf2lZWL3ilNeXEq97Oaa70T2N+FTB4eNQ3xR/VpIMkfNB5 FJfLQcisuocqbeFTqeKs6uiK3f/VTSxK5bjg3MyZiUd7yvADhLHtBjB0Kvu4f3m7vYV0 en+zz8Hdes9/sL4Tdmuftf0Gqyxvobr71lpqyu/1KphrkIA/Xb4kjuMrsC6UDiIKSzmi pJwxAF/hyf9GDOv7oKjNdTGJcldTnrv2GizPPx8B5VwuQ+H3yUjIMWrR6umQJLlMDUst 9LFE5lkRR5bqxl1bXG3t3hICOZRlugoexM9zD4/W4rKAGHLa2RfsMGCdTq78O1gXRDDh a45w== X-Gm-Message-State: AOJu0YwKrNd7X6yNvvC+Qgc2bPq+SKIuNcGcMIaHwOHlpXbbbumqDD+V EQQX8SIvPT9JfsInR0riQztcnW2T2/93LGwyrtae5rOyn7/ktZQAL0CHPfDPvoE5rdW04RUJaH1 DyF4= X-Gm-Gg: ASbGncvNewJB4fDaTmsv6X0rcRi9xHfsdiIDPA/Nx+J9HxJp8M2XCxFkGsbc57w9kaP HPRCQqYnxOJfwQfaR26A+rAKEo9oOLAMHiJL3pAODio1KQVJoKwh1h1j8xCKGVQvxFpaAh/UsKu REFBUOpugCIIhO0aKldM3N9nh4yg3bZZd7wPEWFiz4AVUBqVrzQHFFUO2FZr132sIcK26c/YCpg rItB6290FOdjVWSTt5tpa2q8trb66pUszD0aKnE8LiHfV8nVwrRtGbaxz7Hm70SaLFa0L5p/gs/ AXBWqzDVNpa7TBTch9hduzGPJyz3+OG+UYu6Rgrb/61zXcyNGYZmWS47zb/PmHgSCEX0fEIkfIm 6t260rsB7xfgxa0Z9AMz0UeI1jUCVyw== X-Google-Smtp-Source: AGHT+IHNIRlXIyqDHZtXrj4/5MhbJa6bQZXiAykfyeWnlVpK5uK9skvNveQY6R1e0SRcLHz5PaarKQ== X-Received: by 2002:a05:6000:156b:b0:38d:e304:7478 with SMTP id ffacd0b85a97d-39132dc56f2mr6089276f8f.38.1741469823381; Sat, 08 Mar 2025 13:37:03 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 04/14] hw/sd/sdhci: Make quirks a class property Date: Sat, 8 Mar 2025 22:36:30 +0100 Message-ID: <20250308213640.13138-5-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::435; envelope-from=philmd@linaro.org; helo=mail-wr1-x435.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741469953507019100 All TYPE_IMX_USDHC instances use the quirk: move it to the class layer. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/sd/sdhci.h | 3 ++- hw/sd/sdhci.c | 15 +++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index c4b20db3877..0616ce3aa59 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -95,7 +95,6 @@ struct SDHCIState { =20 /* Configurable properties */ bool pending_insert_quirk; /* Quirk for Raspberry Pi card insert int */ - uint32_t quirks; uint8_t endianness; uint8_t sd_spec_version; uint8_t uhs_mode; @@ -112,6 +111,8 @@ typedef struct SDHCIClass { PCIDeviceClass pci_parent_class; SysBusDeviceClass sbd_parent_class; }; + + uint32_t quirks; } SDHCIClass; =20 /* diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 4917a9b3632..2b7eb11a14a 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -345,6 +345,8 @@ static void sdhci_send_command(SDHCIState *s) rlen =3D sdbus_do_command(&s->sdbus, &request, response); =20 if (s->cmdreg & SDHC_CMD_RESPONSE) { + SDHCIClass *sc =3D SYSBUS_SDHCI_GET_CLASS(s); + if (rlen =3D=3D 4) { s->rspreg[0] =3D ldl_be_p(response); s->rspreg[1] =3D s->rspreg[2] =3D s->rspreg[3] =3D 0; @@ -366,7 +368,7 @@ static void sdhci_send_command(SDHCIState *s) } } =20 - if (!(s->quirks & SDHCI_QUIRK_NO_BUSY_IRQ) && + if (!(sc->quirks & SDHCI_QUIRK_NO_BUSY_IRQ) && (s->norintstsen & SDHC_NISEN_TRSCMP) && (s->cmdreg & SDHC_CMD_RESPONSE) =3D=3D SDHC_CMD_RSP_WITH_BUSY)= { s->norintsts |=3D SDHC_NIS_TRSCMP; @@ -1886,7 +1888,15 @@ static void imx_usdhc_init(Object *obj) SDHCIState *s =3D SYSBUS_SDHCI(obj); =20 s->io_ops =3D &usdhc_mmio_ops; - s->quirks =3D SDHCI_QUIRK_NO_BUSY_IRQ; +} + +static void imx_usdhc_class_init(ObjectClass *oc, void *data) +{ + SDHCIClass *sc =3D SYSBUS_SDHCI_CLASS(oc); + + sc->quirks =3D SDHCI_QUIRK_NO_BUSY_IRQ; + + sdhci_common_class_init(oc, data); } =20 /* --- qdev Samsung s3c --- */ @@ -1967,6 +1977,7 @@ static const TypeInfo sdhci_types[] =3D { .name =3D TYPE_IMX_USDHC, .parent =3D TYPE_SYSBUS_SDHCI, .instance_init =3D imx_usdhc_init, + .class_init =3D imx_usdhc_class_init, }, { .name =3D TYPE_S3C_SDHCI, --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741470014; cv=none; d=zohomail.com; s=zohoarc; b=ThvfPcgv0BpRM0NtkS5TrmHN1XvjiQSwxVUH3XoSYwGNyN5Pnuy3K9xl+2OfIULVE74B7/e7gY/Em6FCAZSz886Usi3c9Gh/r0sIlTK+g0x/yzIYfOBmU+QVwNI6IG6CnCx9ADIG6ixGqDswsML36/Etr7lAFLWWjAhDIjNl8Sk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741470014; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=rMei/vL26mhTGl41GbDkmhJ/KXJkHCw9uJWhPvP3Z6w=; b=EZlPblJE6wtebWCPQrwz3fkjtDZKX8EV+5ehG+w7XVUVqqMh88/1n3l5crePZmq7tK4ipMDlKilmn3HrhPEdzXp63rz2U0RpS3xVQ/4rUaPMv03Fq4lhhC+pqcTK5gnLiHvVemVG59KAqPPZSI5HcDby5wQnKI3Yo2ucnqdECJw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741470014354401.98134929537935; Sat, 8 Mar 2025 13:40:14 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1sU-0006sn-Ds; Sat, 08 Mar 2025 16:38:38 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1rB-0005YE-3A for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:20 -0500 Received: from mail-wr1-x42d.google.com ([2a00:1450:4864:20::42d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1r3-0003ur-Vp for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:15 -0500 Received: by mail-wr1-x42d.google.com with SMTP id ffacd0b85a97d-3913d129c1aso384192f8f.0 for ; Sat, 08 Mar 2025 13:37:09 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3912c0195casm10040270f8f.53.2025.03.08.13.37.07 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469828; x=1742074628; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rMei/vL26mhTGl41GbDkmhJ/KXJkHCw9uJWhPvP3Z6w=; b=z21EBV6ywampdlYy9NWn0h8qF97tiG4m7PZ8R8IpoeDMX38WmkAJeyGtp0kH65jScE dEMKQX+OAIFvFOl8T77+0znMq/WqUXG/oFgmbfRpt2OC7+YZ0E+LLSZmH7IoAtouHhZl G9WPreYQlzBLHkooGOOIJduJ7+ZvpN2phoP+fDW2sTDKaM+Ddypk7silPClBxrdPqE4p fK49IgKhbOrh3egOzbnlZeWclQ9Hx5iHs5Xdf7PXre06/L/wBWLadCR6eQYPovEAf5tS AjlraaORfV/OGgBy0QxinZDkGo1gH6EfI89hCeknkmFyEufDCB8LIf1HBMBtHy4eCmtg s3pQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469828; x=1742074628; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rMei/vL26mhTGl41GbDkmhJ/KXJkHCw9uJWhPvP3Z6w=; b=dCKTC0tWreT8HyVpxMV3oq+s2LRj//H4PZ8Dsn3eeuSy94FQWyzU/3ui71BqJOedEm CtycYCL+DOKz3SCQsGV4pgEl23G1NxsOvAJmYZPRnt5rlYTZP4NjSn0iXfeMfR6o5wdv iv4kPegx0GYwBuxY4sJf5jRmwUDV9TfoayRM89xHRcb3a9AfphjCIDoJu1O6AZz/lyO2 sM8Z0ycvoG8VsTqxKpx6a1pFv9s7zWa8Vt8M/C57/N9JRWjPis6OV8YRC464re4jf1+z Nxf6/QDhHKj26Fgg9l3eifLbvNnTiFHW1Gip5Xjb2Q1w9I1vXPLjCtWUW0K4Y3YvIlTE 3TJQ== X-Gm-Message-State: AOJu0YzPLMYLjkUyo6ENnae1A2AdKXfRnvhCbt1aHGDT+5Pac06YWlce 39VZrkkGiEWIQyEA5fVDHv1VUZSuEPWks4bR2DceTPjRs75wWe6tzVTeM9gVnmEnDFygeD22NJp or+U= X-Gm-Gg: ASbGncuWqQm7Vwmhlui/1X66eiSsF5rgSumMoLNB77N8vmT34gcyiDD3vDjIOgeWmtd u+1SgGTNND7VyLuWEEW4q7ZIcQQUB597fxYJX29HP5txFiAYtJpIi6KgEZJpXtUFbdjo5OlTsTW 0kJDgDSE47AGx5DgL1zs4CDq4KZFEgYmrmq/g+JWXQQyPQtJqjdgfYP/u4e+mXZu9lsNBUtLNeG lDpiTv75bfqoOzJpmpT0LKfwpQzcwPADYk/aPdqXCKYwbCC8ubc5MvICn3wyM1WgnRTuWVOrXQt moDJqOh6/mDqQa5n5u6jMUu8rQ3G2RD+kZ0gqmQlsGjsQhO+/sLEluZPN7TYMAEkNhc64VBch13 NZ2hshuAFK6v1VP6QQk4= X-Google-Smtp-Source: AGHT+IFEvqoOhWSWS6tg30hVm2pmsUYIMiATIkgYBvjCVbw4S3/C8ES3L8pq0tg+uL4BjDPgaTHWxg== X-Received: by 2002:a5d:6d84:0:b0:391:65c:1b05 with SMTP id ffacd0b85a97d-3913aef5f15mr2375513f8f.11.1741469828116; Sat, 08 Mar 2025 13:37:08 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 05/14] hw/sd/sdhci: Make I/O region size a class property Date: Sat, 8 Mar 2025 22:36:31 +0100 Message-ID: <20250308213640.13138-6-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42d; envelope-from=philmd@linaro.org; helo=mail-wr1-x42d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741470014873019000 Be ready to have SDHC implementations to cover a wider I/O address range. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: BALATON Zoltan --- include/hw/sd/sdhci.h | 1 + hw/sd/sdhci.c | 10 ++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index 0616ce3aa59..2709a7a69d5 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -113,6 +113,7 @@ typedef struct SDHCIClass { }; =20 uint32_t quirks; + uint64_t iomem_size; } SDHCIClass; =20 /* diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 2b7eb11a14a..637067fef50 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1443,6 +1443,8 @@ void sdhci_uninitfn(SDHCIState *s) void sdhci_common_realize(SDHCIState *s, Error **errp) { ERRP_GUARD(); + SDHCIClass *sc =3D SYSBUS_SDHCI_GET_CLASS(s); + const char *class_name =3D object_get_typename(OBJECT(s)); =20 switch (s->endianness) { case DEVICE_LITTLE_ENDIAN: @@ -1468,8 +1470,9 @@ void sdhci_common_realize(SDHCIState *s, Error **errp) s->buf_maxsz =3D sdhci_get_fifolen(s); s->fifo_buffer =3D g_malloc0(s->buf_maxsz); =20 - memory_region_init_io(&s->iomem, OBJECT(s), s->io_ops, s, "sdhci", - SDHC_REGISTERS_MAP_SIZE); + assert(sc->iomem_size >=3D SDHC_REGISTERS_MAP_SIZE); + memory_region_init_io(&s->iomem, OBJECT(s), s->io_ops, s, class_name, + sc->iomem_size); } =20 void sdhci_common_unrealize(SDHCIState *s) @@ -1621,11 +1624,14 @@ static void sdhci_sysbus_unrealize(DeviceState *dev) static void sdhci_sysbus_class_init(ObjectClass *klass, void *data) { DeviceClass *dc =3D DEVICE_CLASS(klass); + SDHCIClass *sc =3D SYSBUS_SDHCI_CLASS(klass); =20 device_class_set_props(dc, sdhci_sysbus_properties); dc->realize =3D sdhci_sysbus_realize; dc->unrealize =3D sdhci_sysbus_unrealize; =20 + sc->iomem_size =3D SDHC_REGISTERS_MAP_SIZE; + sdhci_common_class_init(klass, data); } =20 --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741470050; cv=none; d=zohomail.com; s=zohoarc; b=nhK+2ATZA0kD6/trf/SHEc6Q7d4GzanDSaxtbDGpjXKo6h/xrV6Gl74jklVVG5H5Okxk2nX/xEYVZiPc148pED19MpWdvqIakAhI46Jqe7fHfY7nondbMEhz3hcTgmMF5RrMSP+yC8kRJTPDcRMiafHd2Nrlq0pBXdN7WtiMd1A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741470050; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=akRNzOoRRyY/xSKhmyVeI+5UU9kBXMKW6nWI01FbvUE=; b=jiDVS2kipbdo95TLMG3fljHKZ28926vFbK/bddh+DcQVJSosEheW4n2mi1/572MHUfwFB5eq6+Vxhs87W0xxE1j7OpGnmBEG6ujxt32VUPj99lq6EZDrzir89YXH9c8okQhikAMIDdpXH0FqdDDEa1c+PMAnRkm2yZrECsTJV7U= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741470050722962.3262439187691; Sat, 8 Mar 2025 13:40:50 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1sW-000731-CT; Sat, 08 Mar 2025 16:38:40 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1rF-0005Yu-1d for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:31 -0500 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1rA-0003vs-ST for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:18 -0500 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-43cf034d4abso1402075e9.3 for ; Sat, 08 Mar 2025 13:37:15 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3912bfbaa94sm9963087f8f.14.2025.03.08.13.37.11 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469834; x=1742074634; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=akRNzOoRRyY/xSKhmyVeI+5UU9kBXMKW6nWI01FbvUE=; b=Io2AyQFP+0pG4t9mNFdUsDeQtliT4b9N30kLRMQEQJn6KyOtsTVXXM+QhjO4BJH8AD yBua7QK4P/BT1uGx7H2poKbeUICqCRpCe+tU/gwzzoCAQycQmRK/s6i42QUtEv1OMPSd gMkMIEiSjtKjJG0P9OZxLQtZogpxQMtCgDZA2d2TLrIbNMLj6sTN8Jasdt1cH+xHghsu ddNdR5oyw/QPILobDkoDPkA0YBp4aC2ITC9aBVMXg+3WY1FKklF4n7Fo4w6tT9XDvH+S mfcb3iUpEMRKR9fuLcoENDC+Ahy2rVA7yH168LCzLq03EzwBx4+INaeADeRMEnoJdP5m wzsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469834; x=1742074634; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=akRNzOoRRyY/xSKhmyVeI+5UU9kBXMKW6nWI01FbvUE=; b=MGInRME9YWkxZI1Bp7FQYGEtdG5Q5Gai1w9mj2H6XVj4VpqNcOeb4j91WNjlvBfc4R LsNtXtXXf1w3jldKFwEmkijZ17EKix41tqsV4bz9R+rha+UnITH7o0utr4eYvRFn8VkZ rEjWrdK12WumKgrlEvLTN224WvKQszxZydeMXnUSI4qA1unJy3SsJ7P5NLoEOOQDhTAp M48wyIihKiWxGySsRGneOoKKqLJ1/Cb/eRprLkBBmxLKY0gm+d8Kqul55huOdJ2bXqlU kgmoH/SWBxXBvAniXzkrOJAPdwSusol2boxWmjj2hoXZxuPECfnx42k4Th4d7i8xq67h TtRw== X-Gm-Message-State: AOJu0YyZCUkl3cr3C/+7YD3UnnN1Ld43Mz8fJzkzEjUQ3qEQbH0fXtKU 6fEe2EdNeCaq6O+HanpuZdQTyMJs7iErt8wZy4vK/GfnyMzdxx9J8gFOda3wkex5WRr/5ODmn/e bsf4= X-Gm-Gg: ASbGncu5U5uWNQlXV0znOe+JDZTNhhnzQ9TNo2tbNYOlWASh9H7QMc7Sw7bUL1bd8Xf ikeHauUJ69qMQ9oXiBVPc02PtX6xhBbvSntzMZsBzk1kzEDo66+d4FyQBK/dnRXu2E4iYQyE0vN v256p/yElOyvwt7vjwGWk9tKWeDs0sxcvbIsH7J2hDO+f4o235W2h70YGt6g42VIcPsEhp4dGW2 K0SyXCOcW5zFjzbVwfCeG+zzwm0loIW5U7amuIMVDXSyGJzlDGfOcNMzt8iheIdJKBDDaEN9+YU fXroJJk8SvM/Q5/BPMro3DUnmlga6Z64kj+20n2zFMWeRIGnQnUD4N7B55zOX/qjTl58ddviWjP NbkoQRh6xeEqMVshLBfE= X-Google-Smtp-Source: AGHT+IFleBt6cR4JT4IujkflDeTTtooakD+z+Ef87GAhnmCJ81BWA/eBLG7qhw2k0d6EmYnU7SMm3w== X-Received: by 2002:a05:600c:46d0:b0:439:969e:d80f with SMTP id 5b1f17b1804b1-43c60231ddamr59791445e9.31.1741469833745; Sat, 08 Mar 2025 13:37:13 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 06/14] hw/sd/sdhci: Enforce little endianness on PCI devices Date: Sat, 8 Mar 2025 22:36:32 +0100 Message-ID: <20250308213640.13138-7-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32e; envelope-from=philmd@linaro.org; helo=mail-wm1-x32e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741470050948019000 This is the default, but better be safe than sorry. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/sd/sdhci-pci.c | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/sd/sdhci-pci.c b/hw/sd/sdhci-pci.c index 5268c0dee50..5f82178a76f 100644 --- a/hw/sd/sdhci-pci.c +++ b/hw/sd/sdhci-pci.c @@ -32,6 +32,7 @@ static void sdhci_pci_realize(PCIDevice *dev, Error **err= p) SDHCIState *s =3D PCI_SDHCI(dev); =20 sdhci_initfn(s); + qdev_prop_set_uint8(DEVICE(dev), "endianness", DEVICE_LITTLE_ENDIAN); sdhci_common_realize(s, errp); if (*errp) { return; --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741470023; cv=none; d=zohomail.com; s=zohoarc; b=hd+SyOoLZS+LEGCzXI6tL54uYUajpFpxucBSYFlDKHXuDSt/XC0Qiz/CclVkCiIFgoLmgPoGacd4DzLWAx4o1U41iVWNXi9zC2L8yEEcXeLFWiyXY1g2TsaIwH9ef29U8uODgqewEg+mw1uSHKhCHNZdDencuY5y3sEKrL+dtMk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741470023; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=K6w2s7vpLMt8PGTRM64NH99KcirJjbualG9t0DnJnfI=; b=NMqK4D1z9rBHzD+dogv1Cx2IjVRrP2EE/6jn9FoIsbI7kfCde26S+VbwliWSfW+9OoZFQTw0bscHoK1CG3EZdJtitf+DWwCNqr3uRPR1/RgPXxcEkvM6SA27rKvBmn5BKqzsAdjdKh6oq92e1it1oyXgHZmrcGZX3xTsOZUC1yY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741470023288354.9415174566999; Sat, 8 Mar 2025 13:40:23 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1sW-00074P-Dj; Sat, 08 Mar 2025 16:38:40 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1rH-0005bO-NM for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:39 -0500 Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1rE-0003wZ-R3 for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:23 -0500 Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-39140bd6317so246487f8f.1 for ; Sat, 08 Mar 2025 13:37:20 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3912c1031e3sm9748796f8f.82.2025.03.08.13.37.17 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469839; x=1742074639; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=K6w2s7vpLMt8PGTRM64NH99KcirJjbualG9t0DnJnfI=; b=cyWVjh0z1ZCNvJBY+sgXujX7MvN5vbGkZ6k1fZwzJmzKapkpld6mOoGPYV9owkDRC2 yysRDLfW6H7aG3N1YzlSYrMD/qxNTNLyNJkBVwBh8eMyQMFdwxFUCKksRXWPBU+BfH3J 3gEAZGraI5tfpJRtbU7V/jk/mLX/CgO02lY1g7wNNfQs0TVi9/crV+09k7D1GKBka9BK bnwxbJgT2rZC2c15jpZKOiNlbaiuA6mVSgP3VBlFWbzWtQ1nIMbTolHUZKuu3IcQl7sj u8NwQINJaUi80+fLWZXoLZoZL6V0YocwFm4fwQEk3i+cOTcpJ0zdkQvtRFfrvLnhqpIy BrPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469839; x=1742074639; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=K6w2s7vpLMt8PGTRM64NH99KcirJjbualG9t0DnJnfI=; b=sGF6TSIEbEPJrxACREyNKc8qhyFifWHqHhhsJU7xZPwCgyCZo8B6UJqp0/L4PLvU5e 1zmH37w+r16bbPn5EeCUFuhVRR//E4MCSAxqEgRvCOxadhA/6+eQdspPvCRyicsSZxTe tClCp64qn7eB4sLhCOB7cs2rAcoJrbGvT2ATdc+IDvU+1CZ1s7oZpSjXbVWDQGRGWF2U UTqvNO9KiPQxD3Cq/sQqLTzvqZF3HQ6J8nmbTSA82mHl9w+eBzDh8zIv11akOBDVKcql X4+sW4e1n9gMLfXYLPoYKCIOOv80o3q93xbl3ArX1Fhk1C/kVrOojFplDINh+17QB/lf SCwQ== X-Gm-Message-State: AOJu0Yxt0xMt0fzpoeDnddifkeb7uW035jReE1zW7i2aMsexSi/T/DWS CviFYvRIA2mmWMdYWj7oBLmP3ksYgnOrKyMkMJfT5p3UztA7gTB2916CsLZA9uyjae3Id/kLqXr cTA0= X-Gm-Gg: ASbGncta/Lc/UtvYiH9Xbw2aAWk2VDJ3Oukqe1GqPByuLY5xFRFU8aVYW5PGc4u/4Cs w0IYYQ3UJi3Ki5Ur8pZ3E+V1sdf9Vv03PaK34xkL5tzUtPJIlyHHQjtZAaHmT9SHxuMv1ejdNwU GHXHiGYs3YvhngPYy0Waz1kY+L8Fc8OMoasdt4cMrKVmi/ISbXMjaED+d9HaBvB9k2EP0Oe+trb zPSGWvYG8EtJgtpP1Q1Ll0qG+MhPS5PX12fMmX6J8posjuEB9U7G4vU+3/Sh43ow45abCESxGeC 5RQDSZ670pLsL9DGjPVu+TKESDlvI3TzD3k8fpYRTSxWR5pf0JlInJtVaThBWkoFMPDwIb67dUf VgbgOhdEJD7UHgVc6hQE= X-Google-Smtp-Source: AGHT+IHd/Cl9BUOitYGQQY6N+ZtglqfA5CZfDE84IrbB5Vxox40pVnN5He/DwpjGmvVlXSE0s7ybNw== X-Received: by 2002:a5d:5f45:0:b0:38d:d9bd:18a6 with SMTP id ffacd0b85a97d-39132dc545dmr4796426f8f.42.1741469839210; Sat, 08 Mar 2025 13:37:19 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 07/14] hw/sd/sdhci: Allow SDHCI classes to register their own MemoryRegionOps Date: Sat, 8 Mar 2025 22:36:33 +0100 Message-ID: <20250308213640.13138-8-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42a; envelope-from=philmd@linaro.org; helo=mail-wr1-x42a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741470025160019000 Add MemoryRegionOps as a class property. For now it is only used by TYPE_IMX_USDHC. Otherwise the default remains in little endian. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/sd/sdhci.h | 1 + hw/sd/sdhci.c | 22 ++++++++-------------- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index 2709a7a69d5..60a0442c805 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -112,6 +112,7 @@ typedef struct SDHCIClass { SysBusDeviceClass sbd_parent_class; }; =20 + const MemoryRegionOps *io_ops; uint32_t quirks; uint64_t iomem_size; } SDHCIClass; diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 637067fef50..ae485f90dfe 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1427,8 +1427,6 @@ void sdhci_initfn(SDHCIState *s) sdhci_raise_insertion_irq, s); s->transfer_timer =3D timer_new_ns(QEMU_CLOCK_VIRTUAL, sdhci_data_transfer, s); - - s->io_ops =3D &sdhci_mmio_le_ops; } =20 void sdhci_uninitfn(SDHCIState *s) @@ -1446,6 +1444,7 @@ void sdhci_common_realize(SDHCIState *s, Error **errp) SDHCIClass *sc =3D SYSBUS_SDHCI_GET_CLASS(s); const char *class_name =3D object_get_typename(OBJECT(s)); =20 + s->io_ops =3D sc->io_ops ?: &sdhci_mmio_le_ops; switch (s->endianness) { case DEVICE_LITTLE_ENDIAN: /* s->io_ops is little endian by default */ @@ -1889,17 +1888,11 @@ static const MemoryRegionOps usdhc_mmio_ops =3D { .endianness =3D DEVICE_LITTLE_ENDIAN, }; =20 -static void imx_usdhc_init(Object *obj) -{ - SDHCIState *s =3D SYSBUS_SDHCI(obj); - - s->io_ops =3D &usdhc_mmio_ops; -} - static void imx_usdhc_class_init(ObjectClass *oc, void *data) { SDHCIClass *sc =3D SYSBUS_SDHCI_CLASS(oc); =20 + sc->io_ops =3D &usdhc_mmio_ops; sc->quirks =3D SDHCI_QUIRK_NO_BUSY_IRQ; =20 sdhci_common_class_init(oc, data); @@ -1956,11 +1949,13 @@ static const MemoryRegionOps sdhci_s3c_mmio_ops =3D= { .endianness =3D DEVICE_LITTLE_ENDIAN, }; =20 -static void sdhci_s3c_init(Object *obj) +static void sdhci_s3c_class_init(ObjectClass *oc, void *data) { - SDHCIState *s =3D SYSBUS_SDHCI(obj); + SDHCIClass *sc =3D SYSBUS_SDHCI_CLASS(oc); =20 - s->io_ops =3D &sdhci_s3c_mmio_ops; + sc->io_ops =3D &sdhci_s3c_mmio_ops; + + sdhci_common_class_init(oc, data); } =20 static const TypeInfo sdhci_types[] =3D { @@ -1982,13 +1977,12 @@ static const TypeInfo sdhci_types[] =3D { { .name =3D TYPE_IMX_USDHC, .parent =3D TYPE_SYSBUS_SDHCI, - .instance_init =3D imx_usdhc_init, .class_init =3D imx_usdhc_class_init, }, { .name =3D TYPE_S3C_SDHCI, .parent =3D TYPE_SYSBUS_SDHCI, - .instance_init =3D sdhci_s3c_init, + .class_init =3D sdhci_s3c_class_init, }, }; =20 --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741469985; cv=none; d=zohomail.com; s=zohoarc; b=NXb7nTPvLiky4F1VmFlfyWbGlUiG1H/5syHDxEUGY3B9QcpjJD53BHukqV8ql/yv+C7ExfGtqyd63WdMSP9+lbYj9DTkkg0UTb/Em4O7VnWdlZEtXOYLoKYWRWS88dXhp54N3SaUatepAwfPwDvnjp6UzXRMyx0ggY9RyIDkDLY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741469985; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=JHs4NJBzCmz72Qc75GTHjI0bhqCkUEPaPLmnD21pmMM=; b=ehvQQmrH5pXElzGPmT4wcr+RyzRFFX/SdvE8vUcY80Q4IHDOu3dtfkIoxt8gRp6dtAoOqo1Shxuwba9lgfsy+wZQ/stAA1QGJhjf3P4rB7fUm9MsjZf/vWy8pCq7cVVj3RXwbQlBhAI1fKPfLRqWHNjx3dLaKU+NSqhtIyaJBWU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741469985111212.1511231600233; Sat, 8 Mar 2025 13:39:45 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1sZ-0007GU-38; Sat, 08 Mar 2025 16:38:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1rV-0005fK-1l for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:40 -0500 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1rL-0003xr-6u for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:34 -0500 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-43bc4b16135so17392815e9.1 for ; Sat, 08 Mar 2025 13:37:26 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3912c01d2cdsm10044042f8f.57.2025.03.08.13.37.23 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469845; x=1742074645; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JHs4NJBzCmz72Qc75GTHjI0bhqCkUEPaPLmnD21pmMM=; b=hPCBLUfYPgeO/DLjboYd1twX2XWTPpbzUf/PHAYviZlZ8ePn7mFBrXubNQdmojpumT CRCdo8WtmuRkyQkc59uArFEk4Dggwp0RuneZw1wCgBjR2KH0shvOEaWJ9Pnwa4cEnpSZ FE2B/npBHq+3SscQ80525oKvdNu1GNcosUWBP4AdQYngc5kONGr+FgcmrIj6f6o5Wrm8 ZetW4w2rmKjNUfnlr3/WVZn0JTYR0CZhKjggZZrg58W5aKAvoqJG4Ewv2puDNiubtMFe cLP6JT2hbO48m5vaDfCwvrcbaZ2rYshxjnCCueqmZYT5nXy1PH8KyJjP6tkFO4Ql+d7q XmOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469845; x=1742074645; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JHs4NJBzCmz72Qc75GTHjI0bhqCkUEPaPLmnD21pmMM=; b=Aw83QLFW7FDzXFSfgSDPAfS7lKK8H2mj4Lf+Jfd27wEmyDl9PP2B0Sodo7FKmnX+0o LeZ8oQ7tvSqBkV6l6EnwHYxuvKiGzgAKjewLfWu6u606tzZCf//n/AJE8Sae6M1g9hlr 7QSWxmNRH8IoNqh14WX7RozhdAj7GIC6dtBAPHzR08deMVkKmW6Rf4sR7tFw/9hwRHnM a5oygwTgzK24XH0Z5SRWI+RmqAdkDhhl8mMK8UvijGfJmS8OZ6/4aSSGzZ9HJ6QuD/UG 3M6q/uk1koE2Pw8VT4lhXs7R8NG+dxfJjQwtxq4KwpN7ejZxvDSfj8L5F4rCZj6dibTq zvQw== X-Gm-Message-State: AOJu0YyCzIVTGkJFVLhPsNlb0P/syMt7JihyLMbUjmGUtLBHSAFJU3VB 64/A/cwRW+AXgDlUl6GLnugMV7SBOfyTelvqDP1RFI7FiKLLzhvmOLjF40eEydhlfDMThpCijis LWhM= X-Gm-Gg: ASbGncv5kjklRgBOewjmRpjXlKsZ9AqKYuRrUbPk7dnq+k1fqT6tWSkh9kmA84yimQh cG0USeTND/9+HY+esS64p6uJW8vr813ZdKtcjqAMnc18L8s/v7zWT0d4Ym9eD8ctgUUL/v4FRHV J7zzNxFIg+rQR0MFtKC61VE2hxPHgf077nxTe3CJHxYhvfUedPlPhYdfFhgwak8s+6dPc8g8doQ s7PHCnBj1OMo8prafX9twAccYOO3bSKNXOIUVSb7RnWKWydLWJk54ykVgcyiQJndUi05HVoPqN/ XCXh9jzPBWJ5c7vIINEIfh9D9GWCs/9PVOErR+hUMFaiZhMnlgDSi+7QUnGVoXJBtqTseSmDw+m hEJa68+aeDKW7wlLaqrQ= X-Google-Smtp-Source: AGHT+IGwXR1wra0TM+Bg4xLCAmVHTQ5nhkXDSC/470LZXydxPwzuLM/Y/a64ByLtoO4hlYLL/xKqyg== X-Received: by 2002:a5d:64c3:0:b0:391:31c8:ba58 with SMTP id ffacd0b85a97d-39132d16dd6mr6040899f8f.10.1741469845617; Sat, 08 Mar 2025 13:37:25 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 08/14] hw/sd/sdhci: Simplify MemoryRegionOps endianness check Date: Sat, 8 Mar 2025 22:36:34 +0100 Message-ID: <20250308213640.13138-9-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::329; envelope-from=philmd@linaro.org; helo=mail-wm1-x329.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741469986774019000 While little endianness is the default, ome controllers might be only implemented in big endianness. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/sd/sdhci.c | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index ae485f90dfe..a2e7162e289 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1444,20 +1444,10 @@ void sdhci_common_realize(SDHCIState *s, Error **er= rp) SDHCIClass *sc =3D SYSBUS_SDHCI_GET_CLASS(s); const char *class_name =3D object_get_typename(OBJECT(s)); =20 - s->io_ops =3D sc->io_ops ?: &sdhci_mmio_le_ops; - switch (s->endianness) { - case DEVICE_LITTLE_ENDIAN: - /* s->io_ops is little endian by default */ - break; - case DEVICE_BIG_ENDIAN: - if (s->io_ops !=3D &sdhci_mmio_le_ops) { - error_setg(errp, "SD controller doesn't support big endianness= "); - return; - } - s->io_ops =3D &sdhci_mmio_be_ops; - break; - default: - error_setg(errp, "Incorrect endianness"); + s->io_ops =3D sc->io_ops ?: (s->endianness =3D=3D DEVICE_BIG_ENDIAN ? + &sdhci_mmio_be_ops : &sdhci_mmio_le_ops); + if (s->io_ops->endianness !=3D s->endianness) { + error_setg(errp, "Invalid endianness for SD controller"); return; } =20 --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741469964; cv=none; d=zohomail.com; s=zohoarc; b=DWpbPEwNwG9CbBVwGh/IPPhm2vjbksZAROP9x5UsR2J2Rv4V+b7YzY6xPhEimStuxOMEROfeJjfTa0eu/txjuoz/Y4G8c1o2+cb9ZDwCiCRF/WL0w/8sCW8X6yYDEWo4ZnnbFUQ4RcBnJbkWzIxH0zdoDkP3vzQQDRG7gn+we4k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741469964; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Wkzg1rgBZYx7/P9JJbBLn54qiF2GNm1BHKLu67eKlHs=; b=aXES73R9mTf2/hHn5h61kiH+NuWTqkN1e4fMcE3cFfg1Ik3yWLoGaoA2UJI7wicKZUcEM/P9+aKyrNLpmUVr0BDMXbLvoMFPWJNch1531ApzjScvQjV+wxYHjoBNz2neq+y1wR+oLdCHkx5t8/mHyHBy0BQO2mwhu2uz+bdPzHM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741469964398352.9565552317614; Sat, 8 Mar 2025 13:39:24 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1sc-0007Wz-Vt; Sat, 08 Mar 2025 16:38:47 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1rV-0005fN-35 for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:40 -0500 Received: from mail-wm1-x333.google.com ([2a00:1450:4864:20::333]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1rQ-0003yC-NQ for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:35 -0500 Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-43cec5cd73bso2341525e9.3 for ; Sat, 08 Mar 2025 13:37:31 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43ce48165c0sm41083115e9.26.2025.03.08.13.37.29 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469850; x=1742074650; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Wkzg1rgBZYx7/P9JJbBLn54qiF2GNm1BHKLu67eKlHs=; b=LfOix6EkbgcMtvg0buO2uRWw47oAeB5hf+ao8m0pF/qGFlEzxJPN2WIAA4aanR2zsO HUZicvWWGGFXAYn27GTYkmznhvH/ClXfnAaC7j7TwgC4QB6jub3VT3dbllqkRVl+S+3y WLcq8Y0HvHNOp2g+JZdhm9tjMcdMMns6tdw6qV4y9vX5xM0HtG3n1LRiGxmAHL0xVcLv dsiuriK4fweRMnM3Q7q/aUqY7rESwFJnQzF+IpSnbMU3Gx1tSwGH1vnF+IdlinXMtafC aVtVRVBDXB2jRiLX/dUAlCXvNJp3FmhL/GV3IX8SVGAT27a0iMAlm3lW4/lQijLvSB3w /4+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469850; x=1742074650; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Wkzg1rgBZYx7/P9JJbBLn54qiF2GNm1BHKLu67eKlHs=; b=Og0Sfi1o9qMrE4JevB9tXlq13mEw4JaDdUUePF84zZuN26vCCOslAFcMGFYTXNwFSf /BoUwebvJNVqwF+CRhJECsai6Fq0Mi6jgBw3qiqd0PeJ5TTVJbm4L0UlALtDyG6LvhSj AwIUyfhUMLLAPUdg9HbGuFI18ioJS36FcAhfSDJ9LX3DJJzBbYiqglk1jVGLp6yI4ssg otmhPKJjDe3higkYRT8DDQrPc+xW5gjQBd7wV3w7W6+DWE+Dv0WJQJU+63HU6SEDKiHB zjUAhm0w+TFQlD2bN/9N5ozuJiThct7bXuUxhdU85LUL9YTPuz0nPk3vAGclNlJyxpJH L07w== X-Gm-Message-State: AOJu0YxnPe2MUu8QGPOD2VOyIqpqLJDzGQlrXiAKSk+UsuKH+W4wUC4D 7jXyatDY2G0d/UantEeVShf0hmtXTUAYTLaRITfxzTdbUgAdaJmQHkPl3hyIKzQW3OpLaCwKwQL nqnM= X-Gm-Gg: ASbGnctmDUM4G/V8npjre+WkY5Pa7fQQJWA5DuAOaJaiv1YH5mfN15VjMT/U8bSotiS VUOVCMY9oamrwVoJPoQ4+RdbSBRh1mIs35OuniIdyPiL+2pzbpQgTgm0zOzHoHWiDyX5GNpLMSV TRz18ZbU93F6sFZL/lhaIYtv2C0TJkP5ZfSwtAzFoak7Q624SCMrtVnLwozJH1kFUIYh7I0jkzo FCS0yAB9hCP5k2eRqT7v0ZCHbCpxtF3js96lCU1CHKmT7yz8M0xRfjzoROnN40lSZawj9P7bbaG wiu6sxqmRoswERSade3+2k/gLB+/g9gzLdr1asiBMvfjIOnXn3gn7SzTClWWq1WAn4GlUy9ltf9 jCBCV3wySHdLY0Obaoq4= X-Google-Smtp-Source: AGHT+IFuw5FCfRa6FnlmSvaR2gOW4pYMwDMOuU2LgXEu3jSIuVp/fWAk573TmvtIan3Ax6XdxqIJ8w== X-Received: by 2002:a05:600c:450f:b0:439:9496:181c with SMTP id 5b1f17b1804b1-43c687174a1mr51658455e9.29.1741469850402; Sat, 08 Mar 2025 13:37:30 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 09/14] hw/sd/sdhci: Unify default MemoryRegionOps Date: Sat, 8 Mar 2025 22:36:35 +0100 Message-ID: <20250308213640.13138-10-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::333; envelope-from=philmd@linaro.org; helo=mail-wm1-x333.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741469967738019100 Note, sdhci_mmio_le_ops[] was missing .impl.access_size =3D 4. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/sd/sdhci.c | 46 ++++++++++++++++++++-------------------------- 1 file changed, 20 insertions(+), 26 deletions(-) diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index a2e7162e289..23af3958a1d 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1372,30 +1372,22 @@ sdhci_write(void *opaque, hwaddr offset, uint64_t v= al, unsigned size) value >> shift, value >> shift); } =20 -static const MemoryRegionOps sdhci_mmio_le_ops =3D { - .read =3D sdhci_read, - .write =3D sdhci_write, - .valid =3D { - .min_access_size =3D 1, - .max_access_size =3D 4, - .unaligned =3D false +static const MemoryRegionOps sdhci_mmio_ops[2] =3D { + [0 ... 1] =3D { + .read =3D sdhci_read, + .write =3D sdhci_write, + .impl =3D { + .min_access_size =3D 4, + .max_access_size =3D 4, + }, + .valid =3D { + .min_access_size =3D 1, + .max_access_size =3D 4, + .unaligned =3D false + }, }, - .endianness =3D DEVICE_LITTLE_ENDIAN, -}; - -static const MemoryRegionOps sdhci_mmio_be_ops =3D { - .read =3D sdhci_read, - .write =3D sdhci_write, - .impl =3D { - .min_access_size =3D 4, - .max_access_size =3D 4, - }, - .valid =3D { - .min_access_size =3D 1, - .max_access_size =3D 4, - .unaligned =3D false - }, - .endianness =3D DEVICE_BIG_ENDIAN, + [0].endianness =3D DEVICE_LITTLE_ENDIAN, + [1].endianness =3D DEVICE_BIG_ENDIAN, }; =20 static void sdhci_init_readonly_registers(SDHCIState *s, Error **errp) @@ -1443,10 +1435,12 @@ void sdhci_common_realize(SDHCIState *s, Error **er= rp) ERRP_GUARD(); SDHCIClass *sc =3D SYSBUS_SDHCI_GET_CLASS(s); const char *class_name =3D object_get_typename(OBJECT(s)); + unsigned ops_index; =20 - s->io_ops =3D sc->io_ops ?: (s->endianness =3D=3D DEVICE_BIG_ENDIAN ? - &sdhci_mmio_be_ops : &sdhci_mmio_le_ops); - if (s->io_ops->endianness !=3D s->endianness) { + ops_index =3D s->endianness =3D=3D DEVICE_BIG_ENDIAN ? 1 : 0; + + s->io_ops =3D sc->io_ops ?: &sdhci_mmio_ops[ops_index]; + if (s->io_ops->endianness !=3D sdhci_mmio_ops[ops_index].endianness) { error_setg(errp, "Invalid endianness for SD controller"); return; } --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741470045; cv=none; d=zohomail.com; s=zohoarc; b=dZsD/RTECiWrkFuCa+ee1nw1DCf+n7+rIZcyb5jXA2/9cGrFtKdRhq6DljjoPtaLtCzIY/N3md4f/BTjdWRSAosXGBVzEFtKgxupMaig4EhvSLGPgqdgM3CVIYawBJtkuzrGKNvjikkJig5NBNCR4zJZb6pco4iHBIUTVKg9pIo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741470045; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=M76BvQDiEF2f2PItQcUpRY11DWy0Vj4F0agjAvaV/Ks=; b=ONaoivmzE+YDrpUI7/KpZmf8VkGpmkVDB+ZhtXB5GNjyCx/QDWbreoUwiEAC75aUJoy9+/FlMoRmr/XTTp6IyCD8sMncywiaiV8f4iwln+h8k+y3NJpY9u62pUtL69WX5u/XM/658Ra/f4Rr06NJaUafvGdrUlde6ZfMfOfwvo4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741470045472444.15285256764196; Sat, 8 Mar 2025 13:40:45 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1tB-0000PJ-20; Sat, 08 Mar 2025 16:39:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1rZ-0005i7-AX for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:44 -0500 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1rW-0003yy-72 for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:41 -0500 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-43bc638686eso25105915e9.1 for ; Sat, 08 Mar 2025 13:37:37 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3912bee262esm9903118f8f.0.2025.03.08.13.37.34 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469856; x=1742074656; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=M76BvQDiEF2f2PItQcUpRY11DWy0Vj4F0agjAvaV/Ks=; b=Ci72cBwx9CrTNogSl7s0Ch6ssFrfRmez7YqnXyaSNXgxCraWrVJOUn8GQ9PMBBYfTw wJ2/M9Un8rcR9DxgW492FgNVHmQsSlhruXC7lAeNfmbbJujS23WEQ99wThZ5MTMnnoNL GhoPG4FkzdEPv41PSPgGeANkLVoQptI2VTMuNSGo2R2qHoUzkQ9rtxzAbS3xDrtgPMvW 7i2AJhUa5wmUDNl5IdaTyl5YpNnXuFl+BbMjeNSNyBBtxJWkX09L4OvHTfH9hYd0zyYs LYlXIlnZyPlZ3jZeHfzdG1DXBmZLFTYXatK/k7WHqt8ANB/ThijwT/r2VA7Fx64t7jve Yc1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469856; x=1742074656; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=M76BvQDiEF2f2PItQcUpRY11DWy0Vj4F0agjAvaV/Ks=; b=JIV0BaPtRaTr8v7FzqNHjxqJgXRin9tuTItSD+Y3lZ7u+R5HaJCRQEItRhsMJjzauy Epx+76p2tj2sGndx125r0I9KZf9AvmBJV8sIzHk1DRN8eeNejGq4SXp/LHdWRuAYF7wt z83hA2UaMD3Fb1IXpV3squAsyWkQEBWlzK4AXncVgMXTZEpQBQ3OWYW+n5TMZ3pOIKgu WHc+nUKIYfkM30ahSAMsHT27E7pzTB2QBTJ0j7oke6MNra6lFipNKpXhiKGziVaLab/N MCBai04nV79GIcaj+kHD72JXlEqyk7l1AGBICf8HxfclngHL9c99WjPlciS3eTrInLfJ ccKw== X-Gm-Message-State: AOJu0YyjTqDlIgiwx1TGRLDlVwjyfrEMkYW9cglGHQtJDkXOtmHv6gnD uLsi10toneZkkogH2NDRtz8jfuBaOF9e5qV6u4FcC0+CsY+TqZHwn/WV10tQANA8rsai7MR84SP YL0Y= X-Gm-Gg: ASbGncvzVCP9gHIUiHbIwXMcWKUBfDovAon58p9ose9MGT9ornXYEVAM5IKpPh7YkTQ hnMVqjp32yPkZogIJ0X7t7NqXQf3eDRse3Cb0MX6tf+PTCYilz2MLRyQpxXBFaYgEyuGxgHeQJi PN21715F1w/2aIRi9NslHbMw1t/joez0LfmWHpJx5jc7oq6ClqkkFKvpkWPFkP3Smuk5sgQRiRd 4Iw0YJbtIgl6cgDZjJ3TzcxoIZarYCAU6ZJeCD/vDK8LLVoQ0w19Cmf4VYUydxHxdMpsOLsIIKl oMJV2oRSAqAXK6ho/Uw0chgE8zMmlpinLNjw6B+wt2lTvObVTdsrCmuq2DvtRIcFn+mmXJd1TOC kLnB4NhJDBvDLQjuEEoU= X-Google-Smtp-Source: AGHT+IG7/T/yYK0P/Qt6v6nopiQ+iQxqQ74UC0nEv5yTSum3SPI76m0TG4Z8buebRdmL2kbGbjdDlg== X-Received: by 2002:a5d:64ab:0:b0:390:f9d0:5e7 with SMTP id ffacd0b85a97d-3913af025b1mr2945488f8f.13.1741469855895; Sat, 08 Mar 2025 13:37:35 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 10/14] hw/sd/sdhci: Convert SDHCIState::endianness to EndianMode Date: Sat, 8 Mar 2025 22:36:36 +0100 Message-ID: <20250308213640.13138-11-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=philmd@linaro.org; helo=mail-wm1-x32a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741470047779019100 EndianMode enum is preferred over DEVICE_BIG/LITTLE_ENDIAN values because it is a QAPI type. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/sd/sdhci-internal.h | 3 ++- include/hw/sd/sdhci.h | 3 ++- hw/ppc/e500.c | 2 +- hw/sd/sdhci-pci.c | 2 +- hw/sd/sdhci.c | 7 ++++++- 5 files changed, 12 insertions(+), 5 deletions(-) diff --git a/hw/sd/sdhci-internal.h b/hw/sd/sdhci-internal.h index 9072b06bdde..c459279f3f3 100644 --- a/hw/sd/sdhci-internal.h +++ b/hw/sd/sdhci-internal.h @@ -24,6 +24,7 @@ #ifndef SDHCI_INTERNAL_H #define SDHCI_INTERNAL_H =20 +#include "hw/qdev-properties-system.h" #include "hw/registerfields.h" =20 /* R/W SDMA System Address register 0x0 */ @@ -308,7 +309,7 @@ extern const VMStateDescription sdhci_vmstate; #define SDHC_CAPAB_REG_DEFAULT 0x057834b4 =20 #define DEFINE_SDHCI_COMMON_PROPERTIES(_state) \ - DEFINE_PROP_UINT8("endianness", _state, endianness, DEVICE_LITTLE_ENDI= AN), \ + DEFINE_PROP_ENDIAN("endianness", _state, endianness, ENDIAN_MODE_LITTL= E), \ DEFINE_PROP_UINT8("sd-spec-version", _state, sd_spec_version, 2), \ DEFINE_PROP_UINT8("uhs", _state, uhs_mode, UHS_NOT_SUPPORTED), \ \ diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index 60a0442c805..a91cda16cbe 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -25,6 +25,7 @@ #ifndef SDHCI_H #define SDHCI_H =20 +#include "qapi/qapi-types-common.h" #include "hw/pci/pci_device.h" #include "hw/sysbus.h" #include "hw/sd/sd.h" @@ -95,7 +96,7 @@ struct SDHCIState { =20 /* Configurable properties */ bool pending_insert_quirk; /* Quirk for Raspberry Pi card insert int */ - uint8_t endianness; + EndianMode endianness; uint8_t sd_spec_version; uint8_t uhs_mode; /* diff --git a/hw/ppc/e500.c b/hw/ppc/e500.c index fe8b9f79621..e85e000f054 100644 --- a/hw/ppc/e500.c +++ b/hw/ppc/e500.c @@ -1042,7 +1042,7 @@ void ppce500_init(MachineState *machine) */ dev =3D qdev_new(TYPE_SYSBUS_SDHCI); qdev_prop_set_uint8(dev, "sd-spec-version", 2); - qdev_prop_set_uint8(dev, "endianness", DEVICE_BIG_ENDIAN); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_BIG); s =3D SYS_BUS_DEVICE(dev); sysbus_realize_and_unref(s, &error_fatal); sysbus_connect_irq(s, 0, qdev_get_gpio_in(mpicdev, MPC85XX_ESDHC_I= RQ)); diff --git a/hw/sd/sdhci-pci.c b/hw/sd/sdhci-pci.c index 5f82178a76f..49c4f0478b4 100644 --- a/hw/sd/sdhci-pci.c +++ b/hw/sd/sdhci-pci.c @@ -32,7 +32,7 @@ static void sdhci_pci_realize(PCIDevice *dev, Error **err= p) SDHCIState *s =3D PCI_SDHCI(dev); =20 sdhci_initfn(s); - qdev_prop_set_uint8(DEVICE(dev), "endianness", DEVICE_LITTLE_ENDIAN); + qdev_prop_set_enum(DEVICE(dev), "endianness", ENDIAN_MODE_LITTLE); sdhci_common_realize(s, errp); if (*errp) { return; diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 23af3958a1d..f2bb612c665 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1437,7 +1437,12 @@ void sdhci_common_realize(SDHCIState *s, Error **err= p) const char *class_name =3D object_get_typename(OBJECT(s)); unsigned ops_index; =20 - ops_index =3D s->endianness =3D=3D DEVICE_BIG_ENDIAN ? 1 : 0; + if (s->endianness =3D=3D ENDIAN_MODE_UNSPECIFIED) { + error_setg(errp, "%s property 'endianness'" + " must be set to 'big' or 'little'", class_name); + return; + } + ops_index =3D s->endianness =3D=3D ENDIAN_MODE_BIG ? 1 : 0; =20 s->io_ops =3D sc->io_ops ?: &sdhci_mmio_ops[ops_index]; if (s->io_ops->endianness !=3D sdhci_mmio_ops[ops_index].endianness) { --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741470001; cv=none; d=zohomail.com; s=zohoarc; b=hs9Z9bModIGQaQxYadZlWCoWgMBiZa5BhS0Z94u9iIrXNR7b16R+UZ/c+5KLiDzzs7b/Y/QB7OZl0DUL6D59vl0MfAWl5nceaVgwmV9E62RsNtqxaSKWSSPmqETL8x748CN+ByBak9zOcv8bCnq6Q/V3AxaQvql0MXmOT4Gb7kE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741470001; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=aYlUhb3rggQ40rUgdot+a+VslIzJdQ8NRCCBrVTp1kk=; b=Y3WS5AUHqNrLwFSF3r1azJx8Q0BtPV6nANrMTwxg8cw8IKbkyL2aTM6m03nW/ct66UEEZYhUuMP7j1YsJJYBQhc9MdtmdgrJMzO9gVD1nRUWKnyac1P+9Ge9nxzsebvgnbnA/SkXSa2HiU/ybKi1mqCS2hrsplmj3zYxjukZaZM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741470001565959.4997096040883; Sat, 8 Mar 2025 13:40:01 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1te-0001DX-Gs; Sat, 08 Mar 2025 16:39:50 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1re-0005kb-CW for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:48 -0500 Received: from mail-wm1-x32d.google.com ([2a00:1450:4864:20::32d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1rb-00040H-MT for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:46 -0500 Received: by mail-wm1-x32d.google.com with SMTP id 5b1f17b1804b1-43cf257158fso97395e9.2 for ; Sat, 08 Mar 2025 13:37:42 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43bd42c6203sm124940935e9.24.2025.03.08.13.37.39 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469861; x=1742074661; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=aYlUhb3rggQ40rUgdot+a+VslIzJdQ8NRCCBrVTp1kk=; b=L0Al8F2x6cx4C95akJgk53AnIz0LD3+T/bG9bE7OEe28QVPxK6TYr6BDJG3Ar8Kl5B dwPdnEBPPr2lsVRWQSaopLzBu2wKzIKGMDDwUek86eF9lsfiRPjXb1aJMKWO3Whf5VHF Eos9EXclrIvbCW1OKLwOebUJxa0APoFcfbywbcnq6ZOlblL7kCjBpK3Jd07EIAPIK9Wq m9gESaBX7P6s0pZDqiG+twmUAMV6jFd9mPHesWNUuhc201j/GhqiKHVFU/4OHKV9uuVW S8E7AObwwWmR0kx5saAmFdD8QpPUxXxcDKbFtFrMSH9fak2i4zyF2XG3De+eosVoh4XS J2iQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469861; x=1742074661; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=aYlUhb3rggQ40rUgdot+a+VslIzJdQ8NRCCBrVTp1kk=; b=FfmMWh/B3FeaueJGplcZU6U+fXKdIJK10nZvSTxqmvZNRAPHJThWnM0a1jxFRJ0Cm0 hsE16PpWljazu9Sv0DScLzpixgCZFmYn7ftIrr2/I0HTKkHK0OwF9KVQ6eU7ZNS8LKXY 5MN2lB9CMU1c0nBg2qz7lBrDlTRZAjizSjoB/wG+HLCW+Si8CwogEo2I0vLxWnjz8IYI ldHwE9H5j6+f3zDbGS+REl9PUlsC8V6MPDG9pAAwyCP3JY2jVzwLXWLBZT0aKsnrn7j8 UNKKNr9l0gSow8FXZe2R9hk+OaqV9Fgfk+49rTuvP0U0nuvvOryFYKR0NCOYemILIW81 Hi6g== X-Gm-Message-State: AOJu0YyVaLNnJsecPbEe+0AM13LNpzy4LV/7KhQwDVJ7blq7inkosQAQ fyiV0XAontHLxUmz+ieWSWsBc7DXFJPGugP30t1JI9k4sTRuvhc9zuSmOUFht7mHGKWMXXB8Cwn VtA0= X-Gm-Gg: ASbGncuT/oXdb30j9UMDDBN0RnGPNZvbv9pMjVjYX0jOdgaDe8bcN1hk9EuptINE+/t rC1Og2n8GRdgAAHjTBoFiLa8k78YwBq+4klwbVKJfC/yTn7JptrlyJtjU/IRdGmX0mc19bqwSKL xR39OqXyhcBbcsY0LsRMBXuSTzu5D2AfftzYR3avUfnYP/qwihKbl/chCf11l0OsPkCZTlJ0Pmt 1J+3oONVvcIyfnV1X+PDww21RXyMDHYoSPu6dN7YqZre02jefrXlYNGNj3hyBPZmROBx241z6uG laYvsR8eoi2wnq8PLShf8ZBpZ4HiDks3kqRvgbmwO2EKbPqBEafRJhvth9M82XbbHWW835IuYQM AGrWEIW3LS7V6NJNX3gQ= X-Google-Smtp-Source: AGHT+IGnXCukaOQi3q5SQL72YiOr0dPTmXNdw9xarlK4q1o1vF2CN3iHvdI4SqpEOfl6c1ujDIhPPQ== X-Received: by 2002:a05:600c:3b1d:b0:439:a5e6:73ff with SMTP id 5b1f17b1804b1-43c601e18b2mr56121515e9.17.1741469860743; Sat, 08 Mar 2025 13:37:40 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 11/14] hw/sd/sdhci: Add SDHCIClass::ro::capareg field Date: Sat, 8 Mar 2025 22:36:37 +0100 Message-ID: <20250308213640.13138-12-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32d; envelope-from=philmd@linaro.org; helo=mail-wm1-x32d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741470004457019100 Capability register is read-only. Since we allow instances to clear/set extra bits, log when read-only bits normally set by hardware are cleared at board level. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/sd/sdhci.h | 5 +++++ hw/sd/sdhci.c | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index a91cda16cbe..15ef3a07b54 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -116,6 +116,11 @@ typedef struct SDHCIClass { const MemoryRegionOps *io_ops; uint32_t quirks; uint64_t iomem_size; + + /* Read-only registers */ + struct { + uint64_t capareg; + } ro; } SDHCIClass; =20 /* diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index f2bb612c665..9708b52f850 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -73,6 +73,7 @@ static bool sdhci_check_capab_freq_range(SDHCIState *s, c= onst char *desc, =20 static void sdhci_check_capareg(SDHCIState *s, Error **errp) { + SDHCIClass *sc =3D SYSBUS_SDHCI_GET_CLASS(s); uint64_t msk =3D s->capareg; uint32_t val; bool y; @@ -208,6 +209,11 @@ static void sdhci_check_capareg(SDHCIState *s, Error *= *errp) qemu_log_mask(LOG_UNIMP, "SDHCI: unknown CAPAB mask: 0x%016" PRIx64 "\n", msk= ); } + msk =3D sc->ro.capareg & ~s->capareg; + if (msk) { + qemu_log_mask(LOG_UNIMP, + "SDHCI: ignored CAPAB mask: 0x%016" PRIx64 "\n", msk= ); + } } =20 static uint8_t sdhci_slotint(SDHCIState *s) --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741470013; cv=none; d=zohomail.com; s=zohoarc; b=jk3vogA4k2OtYhbzpNAc+1pgVSvBhRLIV4DMawl1NHBVzNTrT9ogG64F/IyW16bOtN14iq6YjUkOgWgDPaD72LhdIunkeCPiR9nNeQ7qD0HO5q9hRSyBlkWkEJ7E8OyFRkTD06rOhl1LIrzVTATfp4lzWv2yA+IgnE6nvwH7Q2Q= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741470013; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=q/k+IuqmCugwBVdD9kKxpUEX74jL1+6yWn5zkp1fRLA=; b=jBcFUTJDLTN5SI0LNERWs+UCRCrGhxZeDY4F2xyC4m6hpVOQuOIwuywh+mcS/AzrkF7LBiKtx6FgYSl/BBAQVn9FzFc8zNZfDhizuXImoN3NZ5mjG3+oVY2LBFyWY0iFJGfNYM+UQEW7Cn5uUmKeL/i41AMBr2clPByWFl3dpjo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741470013341846.7206747156459; Sat, 8 Mar 2025 13:40:13 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1tf-0001L7-Cl; Sat, 08 Mar 2025 16:39:51 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1rj-0005pJ-Fy for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:56 -0500 Received: from mail-wm1-x330.google.com ([2a00:1450:4864:20::330]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1rg-00041c-4z for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:51 -0500 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-43cf257158fso97595e9.2 for ; Sat, 08 Mar 2025 13:37:47 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3912c1031fdsm9642737f8f.89.2025.03.08.13.37.44 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469866; x=1742074666; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=q/k+IuqmCugwBVdD9kKxpUEX74jL1+6yWn5zkp1fRLA=; b=ggOKiTZ+Bbb3/rlGYQOb34GHHxSnY1yxpXCkV25QI6o7trRexVmlWGooP5GJY4KDoR fjsW9TAvdX5fuhhSsWk/1Er9TkT2LHe+02ZLO1ZER3r9fs3pSbiOAnQzebjdKsgGrULF Ft9ciqwZhu3jsvpbpoQ98kvkZ/0XFiXVj0yyWt86Pt8m1RHE5fimrcfqppuhgQsOL6cR VqdieOmRLlehUjdmtSzOSH1YaU3QIkt6XU4k5/20MWUbafPhkrufdCFpSsluvNcp9TpG QF/QZOTmWlqILProEo0eg9FKEdWcq7rOJYkYErAOdava5optAUMITroh35ERH40Sbpzw QQTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469866; x=1742074666; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=q/k+IuqmCugwBVdD9kKxpUEX74jL1+6yWn5zkp1fRLA=; b=gDh6Ogbhs2LgyS8XldA2JZgxzgXFT6s8rhxEfKValB/WCLYbUzQvVOQD4dOleShX2A XSA6tlwmDeen/K339X0awvOrZlhsXYIuLjTsHnD4fGryX3BkO2JHC4qsb+zCR/+4inJr avI3Vks7+MqvU5i2ecnaRKuNyUq0lXehKD6jjP80XypbIXeaT6g+MYY5T0Z5IC+rmygm AjrZtc7CI3U4OGmOt38zktQuwgJKZRlJM2riCgfCibzekz3HPhQCPfFCd8aZ0cnZ8yFO GKsTc6dQ5FWZcQo0zfY4sISzmwZ9NSwKlRNf+/kujRAtWkYPxXmDcKwt/RHfVA50inya 2zpA== X-Gm-Message-State: AOJu0YzPfEp1WqY3tDIjayW3GaX/A2vn2mjmrwUVNZ1UD3dRAebsy7ye 8R8FN/qbxEc5XvwlH7H/rsJOXiKqC7vnnd1T/FgC9bIOciXyQKu57JGN7Q2U2p8NLHLuXcnm4tB B+uM= X-Gm-Gg: ASbGncu8bGdXPNdXYWHry+Pwg35ndBRZiKJgI/WMv578ska72QoO+Rg3YyPUAq7Aomp TylzDChQPiqcQ3pET0mm1DOBvlkcHGdXzpR9i4EYyB3k66p3l2ReajGDlNJcpJ0M0spIFfkGzAF A+deyW9fcp+Vu7WEgX8UvLVa6XBWE7xgcCJAZKXhk0NbnNZBTrhyzYATR17zeOVHAKu111oHWJw qnJUREJoMLcrSpYQImqDjbi8d5tt1szApyPehYzrE2fqfJ616CJhi8oiqHA26Is7f9a7K8i+FKh YwKaICpKNc6IZuDhh7VaUXoSKF92juj1qEJy5PM2vb7AVtmOdSsOV9SJvtZMQyVkPu+ZQwuX8rc 1SSI7XjlQHqlWtG1aiqI= X-Google-Smtp-Source: AGHT+IGoFnoeiu6c1BMedWp/zn/Fqal0cXYHXGv6fY6PjoLHHj+PM4R9kWt/zfYa/YjNsPX1aXLZvg== X-Received: by 2002:a05:600c:468b:b0:43c:f00b:d581 with SMTP id 5b1f17b1804b1-43cf00bd768mr3603935e9.29.1741469866202; Sat, 08 Mar 2025 13:37:46 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 12/14] hw/sd/sdhci: Allow SDHCI classes to have different register reset values Date: Sat, 8 Mar 2025 22:36:38 +0100 Message-ID: <20250308213640.13138-13-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::330; envelope-from=philmd@linaro.org; helo=mail-wm1-x330.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741470015793019100 For the registers which are not zeroed at reset, allow the different implementations to set particular reset values. Remove the misleading values commented in sdhci-internal.h. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: BALATON Zoltan --- hw/sd/sdhci-internal.h | 24 ++++++++++++------------ include/hw/sd/sdhci.h | 20 ++++++++++++++++++++ hw/sd/sdhci.c | 14 ++++++++++++++ 3 files changed, 46 insertions(+), 12 deletions(-) diff --git a/hw/sd/sdhci-internal.h b/hw/sd/sdhci-internal.h index c459279f3f3..4ca269831f3 100644 --- a/hw/sd/sdhci-internal.h +++ b/hw/sd/sdhci-internal.h @@ -71,7 +71,7 @@ /* R/W Buffer Data Register 0x0 */ #define SDHC_BDATA 0x20 =20 -/* R/ROC Present State Register 0x000A0000 */ +/* R/ROC Present State Register */ #define SDHC_PRNSTS 0x24 #define SDHC_CMD_INHIBIT 0x00000001 #define SDHC_DATA_INHIBIT 0x00000002 @@ -89,7 +89,7 @@ FIELD(SDHC_PRNSTS, CMD_LVL, 24, 1); #define TRANSFERRING_DATA(x) \ ((x) & (SDHC_DOING_READ | SDHC_DOING_WRITE)) =20 -/* R/W Host control Register 0x0 */ +/* R/W Host control Register */ #define SDHC_HOSTCTL 0x28 #define SDHC_CTRL_LED 0x01 #define SDHC_CTRL_DATATRANSFERWIDTH 0x02 /* SD mode only */ @@ -105,17 +105,17 @@ FIELD(SDHC_PRNSTS, CMD_LVL, 24, 1); #define SDHC_CTRL_CDTEST_INS 0x40 #define SDHC_CTRL_CDTEST_EN 0x80 =20 -/* R/W Power Control Register 0x0 */ +/* R/W Power Control Register */ #define SDHC_PWRCON 0x29 #define SDHC_POWER_ON (1 << 0) FIELD(SDHC_PWRCON, BUS_VOLTAGE, 1, 3); =20 -/* R/W Block Gap Control Register 0x0 */ +/* R/W Block Gap Control Register */ #define SDHC_BLKGAP 0x2A #define SDHC_STOP_AT_GAP_REQ 0x01 #define SDHC_CONTINUE_REQ 0x02 =20 -/* R/W WakeUp Control Register 0x0 */ +/* R/W WakeUp Control Register */ #define SDHC_WAKCON 0x2B #define SDHC_WKUP_ON_INS (1 << 1) #define SDHC_WKUP_ON_RMV (1 << 2) @@ -129,17 +129,17 @@ FIELD(SDHC_PWRCON, BUS_VOLTAGE, 1, 3); #define SDHC_CLOCK_IS_ON(x) \ (((x) & SDHC_CLOCK_CHK_MASK) =3D=3D SDHC_CLOCK_CHK_MASK) =20 -/* R/W Timeout Control Register 0x0 */ +/* R/W Timeout Control Register */ #define SDHC_TIMEOUTCON 0x2E FIELD(SDHC_TIMEOUTCON, COUNTER, 0, 4); =20 -/* R/W Software Reset Register 0x0 */ +/* R/W Software Reset Register */ #define SDHC_SWRST 0x2F #define SDHC_RESET_ALL 0x01 #define SDHC_RESET_CMD 0x02 #define SDHC_RESET_DATA 0x04 =20 -/* ROC/RW1C Normal Interrupt Status Register 0x0 */ +/* ROC/RW1C Normal Interrupt Status Register */ #define SDHC_NORINTSTS 0x30 #define SDHC_NIS_ERR 0x8000 #define SDHC_NIS_CMDCMP 0x0001 @@ -152,7 +152,7 @@ FIELD(SDHC_TIMEOUTCON, COUNTER, 0, 4); #define SDHC_NIS_REMOVE 0x0080 #define SDHC_NIS_CARDINT 0x0100 =20 -/* ROC/RW1C Error Interrupt Status Register 0x0 */ +/* ROC/RW1C Error Interrupt Status Register */ #define SDHC_ERRINTSTS 0x32 #define SDHC_EIS_CMDTIMEOUT 0x0001 #define SDHC_EIS_BLKGAP 0x0004 @@ -160,7 +160,7 @@ FIELD(SDHC_TIMEOUTCON, COUNTER, 0, 4); #define SDHC_EIS_CMD12ERR 0x0100 #define SDHC_EIS_ADMAERR 0x0200 =20 -/* R/W Normal Interrupt Status Enable Register 0x0 */ +/* R/W Normal Interrupt Status Enable Register */ #define SDHC_NORINTSTSEN 0x34 #define SDHC_NISEN_CMDCMP 0x0001 #define SDHC_NISEN_TRSCMP 0x0002 @@ -171,7 +171,7 @@ FIELD(SDHC_TIMEOUTCON, COUNTER, 0, 4); #define SDHC_NISEN_REMOVE 0x0080 #define SDHC_NISEN_CARDINT 0x0100 =20 -/* R/W Error Interrupt Status Enable Register 0x0 */ +/* R/W Error Interrupt Status Enable Register */ #define SDHC_ERRINTSTSEN 0x36 #define SDHC_EISEN_CMDTIMEOUT 0x0001 #define SDHC_EISEN_BLKGAP 0x0004 @@ -206,7 +206,7 @@ FIELD(SDHC_HOSTCTL2, VERSION4, 12, 1); /* since = v4 */ FIELD(SDHC_HOSTCTL2, ASYNC_INT, 14, 1); FIELD(SDHC_HOSTCTL2, PRESET_ENA, 15, 1); =20 -/* HWInit Capabilities Register 0x05E80080 */ +/* HWInit Capabilities Register */ #define SDHC_CAPAB 0x40 FIELD(SDHC_CAPAB, TOCLKFREQ, 0, 6); FIELD(SDHC_CAPAB, TOUNIT, 7, 1); diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index 15ef3a07b54..eb8380187b5 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -117,6 +117,26 @@ typedef struct SDHCIClass { uint32_t quirks; uint64_t iomem_size; =20 + /* Default reset values */ + struct { + uint32_t sdmasysad; + + uint16_t blksize; + uint16_t blkcnt; + + uint32_t prnsts; + + uint8_t hostctl1; + uint8_t pwrcon; + uint8_t blkgap; + uint8_t wakcon; + + uint16_t clkcon; + uint8_t timeoutcon; + + uint16_t norintstsen; + uint16_t errintstsen; + } reset; /* Read-only registers */ struct { uint64_t capareg; diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 9708b52f850..234a6e4a1fe 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -294,6 +294,7 @@ static void sdhci_set_readonly(DeviceState *dev, bool l= evel) =20 static void sdhci_reset(SDHCIState *s) { + SDHCIClass *sc =3D SYSBUS_SDHCI_GET_CLASS(s); DeviceState *dev =3D DEVICE(s); =20 timer_del(s->insert_timer); @@ -306,6 +307,19 @@ static void sdhci_reset(SDHCIState *s) */ memset(&s->sdmasysad, 0, (uintptr_t)&s->capareg - (uintptr_t)&s->sdmas= ysad); =20 + s->sdmasysad =3D sc->reset.sdmasysad; + s->blksize =3D sc->reset.blksize; + s->blkcnt =3D sc->reset.blkcnt; + s->prnsts =3D sc->reset.prnsts; + s->hostctl1 =3D sc->reset.hostctl1; + s->pwrcon =3D sc->reset.pwrcon; + s->blkgap =3D sc->reset.blkgap; + s->wakcon =3D sc->reset.wakcon; + s->clkcon =3D sc->reset.clkcon; + s->timeoutcon =3D sc->reset.timeoutcon; + s->norintstsen =3D sc->reset.norintstsen; + s->errintstsen =3D sc->reset.errintstsen; + /* Reset other state based on current card insertion/readonly status */ sdhci_set_inserted(dev, sdbus_get_inserted(&s->sdbus)); sdhci_set_readonly(dev, sdbus_get_readonly(&s->sdbus)); --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741470038; cv=none; d=zohomail.com; s=zohoarc; b=I7vJ+3Jsp6tahnd15n5p/kX1UOZSaban5Vt3xpIyWIPSxZDeepv0/JO6whfAkHsH7aRRFtRLOODY5nGypUhMQ4U7t3c/O4YSSewQ1DFFsM2pF3x+VOOcYxBD6iFhEkroT89ZUO0AjczIL1dpmp2k3kFDh3aSEfjM2pkI9UXQAgM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741470038; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=m0Bj6u5XWk2deTKslAV1isfZbUtFm4cHL8zSvqgOqZ4=; b=WKZvfTfNVogONIY2c26mKemRreyti0j1tRKV8QvOMTFc1OxgqzcPXVaUnXchtbDY6DfIXMh9AXzNwykTd38PFifEJDW8lqM8XAjWAJU3R8bZMp3rBk46d3GrDD3FbqjCeFEfyeUOxToLR7mTVOVJpQVMvO0XDRgxchORyzlrZf4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741470038524883.734560498667; Sat, 8 Mar 2025 13:40:38 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1tn-0001tR-Ck; Sat, 08 Mar 2025 16:40:00 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1rp-0005sy-Fa for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:38:04 -0500 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1rl-00042d-DK for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:37:57 -0500 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-43bc30adad5so17911745e9.1 for ; Sat, 08 Mar 2025 13:37:53 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3912c0e2b8bsm9963609f8f.64.2025.03.08.13.37.49 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469872; x=1742074672; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=m0Bj6u5XWk2deTKslAV1isfZbUtFm4cHL8zSvqgOqZ4=; b=ICssHP8GDR9s84FTt2chVMNbElp5iTX8Ec/9I22dK47yvv8BbaRXW3t6aA2dcQSSY/ /KTeSM1JG5BLsP3BudR+veD5fHYR4JrTfNPFOllkwxe3sJH51pws/gGb8/yBrEu1bUk2 gpw+yq9vKLtoW0yjOiv2boc7EvepSPp+qUUdT+mwOkYjVCsI3DyDZnMLPhXw83Jwe9a6 vhzOh5Oiz6uW0M9QqpX6cLyMnqOEOXesRrIW8A7DDQVJQkige/9SHhI3/xRvxOm4cVS2 UlugNRwZ1usYw6kQM1CpdXtLKaCjNFy552T6jVMM5fLDmKxkQLwI7VjhnKXsnx0l/dtE 4m3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469872; x=1742074672; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=m0Bj6u5XWk2deTKslAV1isfZbUtFm4cHL8zSvqgOqZ4=; b=q5XEmWmMK5TKk49w2U5mPD4gW+EsXS6w/nCR+G1NzfGAF70f2fJ3jT3uSh8b5t16Sg YDMG9Qd1CYb775Gl5oNs9HwDfhragpccAGSQkOmX1G7/5BYsfGLMb+J3BVrLpoia7Uzj CHUe9Qogbm5Rox0tv1cblA2tCG8rSNDDbRCptvNKk0DSDXljI8dWDnHV48+cBifzfKuj lbuSJrW6LeR7tCBAj5uJvcGALJhyBY4gaFdT328XdCmue14q32DoL/BVhn6U9mmSnTub YOsdFzegW+DWeQdvdVLjTBLnV8Z7nu/bAldOs2nWcDY47fCq5q3uppX5GIc13pzt4MQW NJMg== X-Gm-Message-State: AOJu0Yzhz4BhTYb1k2zNPdOmwRrCPG9xTInn6PD2Kawpu0nZc3SqEHz/ hfuMZnyIrdaIu9sC4T0tNv8qcSanSRWaaspHLbctPHfMVEzQUN2iJ+6tH/zyLvGvBQjTs62Al88 UwZY= X-Gm-Gg: ASbGncs7VSvTXl7hm4ZNJfUFeyZaVzGBrLUI27QbEbaRhGY9MyKJweo/NUXDKUCmOX8 ydUt8T8AqdgeojDQtPt8pStxgzDz+pLj5BpL1l8fe4JEFzIcuXAKlM87voqroF/o6xn48xrSuz0 IsBMoo2EdgJg8wzDXmL38KdJqZli+5kurimI24megP+X01RLbEcxvJBnhLw53IXYhc54nc7a+VE 5iqGbK8Z518lqccOcuCFNZ0rQ+449MLlomUTNwGcIOySEDr2BgXDpzDwj2tYrRyGQMIWOf6AxQF L5tKaMS7BtxAXR4CGVYOfFdm6GQLbHyyrZbEcWWlCEENDrPZJ5vG2/7WZxdDbDwtPPKcz7zggVG 6N5WDtLn2oQ+7sNdzO3I= X-Google-Smtp-Source: AGHT+IGtBMnaxwa3hdQ1HgjKCiqG1eNMEWIHiorop/FgpCgWEUTP3TmitBETn/eJaHfUhXtTzb0JuA== X-Received: by 2002:a5d:59af:0:b0:390:de66:cc0c with SMTP id ffacd0b85a97d-39132de1bbcmr5447541f8f.46.1741469871767; Sat, 08 Mar 2025 13:37:51 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 13/14] hw/sd/sdhci: Implement Freescale eSDHC as TYPE_FSL_ESDHC Date: Sat, 8 Mar 2025 22:36:39 +0100 Message-ID: <20250308213640.13138-14-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@linaro.org; helo=mail-wm1-x332.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741470038972019000 Per the MPC8569E reference manual, its SDHC I/O range is 4KiB wide, mapped in big endian order, and it only accepts 32-bit aligned access. Set the default register reset values. Reported-by: BALATON Zoltan Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/sd/sdhci.h | 2 ++ hw/sd/sdhci.c | 37 ++++++++++++++++++++++++++++++++++++- 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/include/hw/sd/sdhci.h b/include/hw/sd/sdhci.h index eb8380187b5..966a1751f50 100644 --- a/include/hw/sd/sdhci.h +++ b/include/hw/sd/sdhci.h @@ -162,6 +162,8 @@ DECLARE_INSTANCE_CHECKER(SDHCIState, SYSBUS_SDHCI, DECLARE_CLASS_CHECKERS(SDHCIClass, SYSBUS_SDHCI, TYPE_SYSBUS_SDHCI) =20 +#define TYPE_FSL_ESDHC "fsl-esdhc" + #define TYPE_IMX_USDHC "imx-usdhc" =20 #define TYPE_S3C_SDHCI "s3c-sdhci" diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c index 234a6e4a1fe..d5cc0bf1458 100644 --- a/hw/sd/sdhci.c +++ b/hw/sd/sdhci.c @@ -1653,7 +1653,37 @@ static void sdhci_bus_class_init(ObjectClass *klass,= void *data) sbc->set_readonly =3D sdhci_set_readonly; } =20 -/* --- qdev i.MX eSDHC --- */ +/* --- Freescale eSDHC (MPC8569ERM Rev.2 from 06/2011) --- */ + +static const MemoryRegionOps fsl_esdhc_mmio_ops =3D { + .read =3D sdhci_read, + .write =3D sdhci_write, + .valid =3D { + .min_access_size =3D 4, + .unaligned =3D false + }, + .endianness =3D DEVICE_BIG_ENDIAN, +}; + +static void fsl_esdhc_class_init(ObjectClass *oc, void *data) +{ + SDHCIClass *sc =3D SYSBUS_SDHCI_CLASS(oc); + + sc->iomem_size =3D 0x1000; + sc->io_ops =3D &fsl_esdhc_mmio_ops; + sc->ro.capareg =3D 0x01e30000; + sc->reset.sdmasysad =3D 8; + sc->reset.blkcnt =3D 8; + sc->reset.prnsts =3D 0xff800000; + sc->reset.hostctl1 =3D 0x20; /* Endian mode (address-invariant) */ + sc->reset.clkcon =3D 0x8000; + sc->reset.norintstsen =3D 0x013f; + sc->reset.errintstsen =3D 0x117f; + + sdhci_common_class_init(oc, data); +} + +/* --- qdev i.MX uSDHC --- */ =20 #define USDHC_MIX_CTRL 0x48 =20 @@ -1983,6 +2013,11 @@ static const TypeInfo sdhci_types[] =3D { .class_size =3D sizeof(SDHCIClass), .class_init =3D sdhci_sysbus_class_init, }, + { + .name =3D TYPE_FSL_ESDHC, + .parent =3D TYPE_SYSBUS_SDHCI, + .class_init =3D fsl_esdhc_class_init, + }, { .name =3D TYPE_IMX_USDHC, .parent =3D TYPE_SYSBUS_SDHCI, --=20 2.47.1 From nobody Mon Feb 9 10:49:58 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1741470026; cv=none; d=zohomail.com; s=zohoarc; b=XPUKjUXps5CEAdalCp2MgEzVMr3hxEfBanwECgM2MFPJEXhNoTnM80dZe7TkgI2Ip/q+9PAQbGZDoPv2soYnbGPNblLMg3LcrA1FdPfGEBH0BYZEC1GmktfyOva30Q2Rjy2C3VGd1ZsDHaKNuR0DcLwWB3j+EW1fbCXU3aD4f88= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1741470026; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=JLtBjh/f3t9o68uNAMfvmOYu9CkLCOLT8MqoCkDG4gs=; b=ls10I4Zo+rSW+OhoZ0zLN35qWVlzRp0jxycx4HCVAbFnY6xoieO24b4XSa6S6m/GH8B+1JmxlQi+enIVnP5kJJaJYix2J4ih74zbMZCG+spCQzs8Hvu4OWTmxmRC8earVVLzF/ChXwxweOsheWHoYyMTKUNNjFzS//nmGPwPna8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1741470026275793.1364651821142; Sat, 8 Mar 2025 13:40:26 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tr1tf-0001LH-CL; Sat, 08 Mar 2025 16:39:51 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tr1rs-0005tT-PS for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:38:04 -0500 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tr1rq-00043J-7c for qemu-devel@nongnu.org; Sat, 08 Mar 2025 16:38:00 -0500 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-43cf05f0c3eso760895e9.0 for ; Sat, 08 Mar 2025 13:37:57 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43cec60d122sm21374995e9.18.2025.03.08.13.37.55 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 08 Mar 2025 13:37:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741469876; x=1742074676; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JLtBjh/f3t9o68uNAMfvmOYu9CkLCOLT8MqoCkDG4gs=; b=L+sR3UUOzHeFUgqEDIAfDjHC4CY9u4/+goO/j3xHzqcQOuzA3339hzwuE+VoW5355R jjxKS6cLln7M/FZnXdQufKByeJK/LN88OvFe+K6OahlVgM6IqyBeP+o2YvJyIt4T2s61 lNU3A+lQePHv7mQTUIRsmP88ynadOPLaELyLDhpq5uQMdGbbvo4h7gFgLdVg7Y2WoFco PHumpJgbcmCkPNqVNEUGF1L+G+fFN1DfOVnp1QV2flxBA5FQqyGA1XXTY7+r2oEVPpgM 3dAB9STHd+PkKEpZrUDnWWGuldLKAcsMmnhv0nj54sL+BitzHsyq+jyUc0zOnu/2NK9F p2KQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741469876; x=1742074676; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JLtBjh/f3t9o68uNAMfvmOYu9CkLCOLT8MqoCkDG4gs=; b=rbA1VJUVu+DpjIRlkJUoIufL3fvQwQN4pY6kjA+5aL+ZnOn8BOexw+Nd8lltm8WqhB 5BhHv3LtHDjDL5GHhAFTdHyOGncIVHjqtCY+7qhuXZVfKqCp7xRQCdb7+InzGw0NT6IZ 4KA0Bzg3PoU4d0styx/o4KoySwOigeGrrYDO/MKHesXumoAptWgc6+k9aq1RguFEhOni 6oE8Xm2IQfSrYQB6mkMJpsMJZAkeQ8ucSwqClGgWR67AZhy/vtgXUn0Quvi5Ut5AFgOU 1hNvbfSCwgSNkBjf0ZP2wswGaS4HpoA6jazFwDtCnHF4o4pWzz25QCTsoflT0PYr9yD0 mxjw== X-Gm-Message-State: AOJu0YwrF9vfs9hDRDrdrXK1K/id/edUNxXQAn+DTiV8vr4GTk5f10RD f0bvTw0vE2ZiHj+pnteSojnrCBKKptPGDeGNJev5PXaFw0g4B48uq4Z7bxaS4SkkVTK6zF0cH9o DWWY= X-Gm-Gg: ASbGncs+A8blFJRGCrl4QJ5YKBVJHxYk4dZ0C7QHl/+2iEFuVAPUggwIrn0/2xmFj3t Gl0Kmpj+jLm5sJSFOe1qWpVyQR+qWz4h1D4za00jFU7UcaS6dBakuo4N2ceIGVNEBw9esgvxXCx 80l1M85WSjFtIml/hSNwKsONZ76OLX2qS8u7//wOBNTjFZJHl02WiP5sUw24Wa8gPyAxbVgyRRy ZHvzwZZMHrnVX1zvlpSfVlUFI1pnVpyDA2a1U45F02e5Cfy6HldAt/Qqv7m03Exxpl8ew5yEXZA J3sBVFyuwM0ge0UpEvtreoB8dQjEf9PWIKDpALe7PtoWmYGF+2Tk/6hEU1Lr0r/sVHemcz/rlMw xwOS4iVjQWhKcvbVMK3A= X-Google-Smtp-Source: AGHT+IEoYRNG0z6zBhQsTXQ97/zFMQbechCx5IrGexbDACJ4fVZmJ/aEm5Lfm5X30RMmoI3MQPSsOQ== X-Received: by 2002:a05:600c:3ba5:b0:43c:eea9:f45a with SMTP id 5b1f17b1804b1-43ceea9f8f8mr7896745e9.4.1741469876521; Sat, 08 Mar 2025 13:37:56 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org, BALATON Zoltan Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Peter Maydell , qemu-ppc@nongnu.org, Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Andrey Smirnov , Bernhard Beschow , Jean-Christophe Dubois , Guenter Roeck , qemu-block@nongnu.org, Bin Meng , qemu-arm@nongnu.org Subject: [PATCH v4 14/14] hw/ppc/e500: Replace generic SDHCI by Freescale eSDHC Date: Sat, 8 Mar 2025 22:36:40 +0100 Message-ID: <20250308213640.13138-15-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250308213640.13138-1-philmd@linaro.org> References: <20250308213640.13138-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::335; envelope-from=philmd@linaro.org; helo=mail-wm1-x335.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1741470027667019100 As Zoltan reported, some U-Boot versions seem to expect correctly initialized registers before expecting interrupts. Now than we have a proper Freescale eSDHC implementation, use it. Reported-by: BALATON Zoltan Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Bernhard Beschow --- hw/ppc/e500.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/hw/ppc/e500.c b/hw/ppc/e500.c index e85e000f054..7d15c926887 100644 --- a/hw/ppc/e500.c +++ b/hw/ppc/e500.c @@ -1027,20 +1027,12 @@ void ppce500_init(MachineState *machine) =20 /* eSDHC */ if (pmc->has_esdhc) { - dev =3D qdev_new(TYPE_UNIMPLEMENTED_DEVICE); - qdev_prop_set_string(dev, "name", "esdhc"); - qdev_prop_set_uint64(dev, "size", MPC85XX_ESDHC_REGS_SIZE); - s =3D SYS_BUS_DEVICE(dev); - sysbus_realize_and_unref(s, &error_fatal); - memory_region_add_subregion(ccsr_addr_space, MPC85XX_ESDHC_REGS_OF= FSET, - sysbus_mmio_get_region(s, 0)); - /* * Compatible with: * - SD Host Controller Specification Version 2.0 Part A2 * (See MPC8569E Reference Manual) */ - dev =3D qdev_new(TYPE_SYSBUS_SDHCI); + dev =3D qdev_new(TYPE_FSL_ESDHC); qdev_prop_set_uint8(dev, "sd-spec-version", 2); qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_BIG); s =3D SYS_BUS_DEVICE(dev); --=20 2.47.1