From patchwork Wed Feb 12 11:24:03 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864432 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp67170wrt; Wed, 12 Feb 2025 03:25:33 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCVrm1G41ykC46BwjSOnaXpOpWlgqsv7ocYh3Fsap9x3ZBnupsat68KO4heiVEe0bl/yCZr5yQ==@linaro.org X-Google-Smtp-Source: AGHT+IEGtoJskTBoQgvLBh1/Dhf2cwm3H7BvVpRBgkYgVe6iBNO5GaCyTtAvwjqI+n2B6szjM2pK X-Received: by 2002:a05:622a:544f:b0:471:812b:4f5 with SMTP id d75a77b69052e-471afe0ebeemr30361931cf.10.1739359532993; Wed, 12 Feb 2025 03:25:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359532; cv=none; d=google.com; s=arc-20240605; b=MTelvMifIbb9s6kVlrV6IwrB3fBx3G/O1IvU+zivGHvarmfmAK1No5dyWyMxbemVnM NLpzLXvaB3wGp4NST462Sn8bWtb+ARppbPLFa+jmF7bzvHq0rb2nAyleh/OxWBEJuw0S Dy/VfS9K8R+2n1niqnK1jiOw8KVsL9ttkcUeGbcUV6nVgyxJtaZUaWunzUaR0PuyeIxr ER7RCCdIc7PVEUidCphgkBU4+NMlWeDTPdXT5oEz5roOxJ6CLNUJ+SEtXAAHNljjcjGQ A6H3Y2iMOBZXbq8czXL+lkjzIlYYIt0/rHoMTOxm40VGgZZJxXZ5FWJoDrHlB9avLfKt 81Eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=IcGwPw1KAay48jXvk36yUAnIISfs7y+i362KBjH7aCo=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=N5IOyKbn98HR3HINR3uh22xs3OAsvDFNJwAJWrualMaT5sVHABwBkjMOAFioBdsX+8 ZWMW/lXKDnJW96uUGsRcxI8UUNj05alkMy8rUQnaGhKnE+Vnu64/ENOup74w587RzMrk ma2cJXDhPF2Cj6AUXEuEHtuSHg1YY7JBkpRnRkpjIGhJccQS0OG2e/ak6L3+tA0ZbFt3 ZrZe8kEAPGUpz92mBmIacFgW58aL1Er76ujCpyIEL76e4V/2QS2KI3XHNU8eKclsSm6Y aiRxci1lUiV1kWiUGxTMafM/8oEFvOaSTW/mXS/QyGZ2YIS3US1X2miqmyRKp38Zf//n PFhA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Aw5ZjrU3; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47196486819si57774711cf.586.2025.02.12.03.25.32 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:25:32 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Aw5ZjrU3; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiAr4-00060I-65; Wed, 12 Feb 2025 06:24:36 -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 1tiAqv-0005wd-Ov for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:27 -0500 Received: from mail-wr1-x42b.google.com ([2a00:1450:4864:20::42b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tiAqs-0004Rs-H5 for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:25 -0500 Received: by mail-wr1-x42b.google.com with SMTP id ffacd0b85a97d-38a25d4b9d4so3474846f8f.0 for ; Wed, 12 Feb 2025 03:24:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359461; x=1739964261; 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=IcGwPw1KAay48jXvk36yUAnIISfs7y+i362KBjH7aCo=; b=Aw5ZjrU31SzRONn93F+4iorSSVB99rhJPQe7tOKH5docxDCoacADiEJTrcd3OgRZnq 8IiGGfXWI32qecV9gluEv4jgIibiC6ELpkVlS6bq3HJf4gWeYy5k0Z9nCylzi/Q8RgMU mq/1egRvWYQ5KmX6IJu80BvakfEjQ8QBEKZ1Jeg5oRb7s/fMh73yx3Jv+fzEb4hhoseh TONljsp39o2TiKKGbynZi4mMJAipBloqgexKpV1ZQEK3te4aHkFC26loTVlkM5USSSA6 6pCZ9PA/gXzS7AYccDceFqN6uc5a1WDuRQUnhbCwJJIkET8IsQmGQNX/YD2fLzww3Nkn VGbw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359461; x=1739964261; 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=IcGwPw1KAay48jXvk36yUAnIISfs7y+i362KBjH7aCo=; b=Ilm3Sc56ppdFUYWlp5RT7APHgf523MTj7wKlkqvIbKnt+sX20cAlVT7+JHPqQtAJZG dqD7lG+Ga0cyXK6eNtC4XFYOqOIFaCZ9VTC2iWy4cZav9LzEiW8e+dIqk7jVaPgYlsHP OgV0YYyNYYDsTXEieBAP1hkTUw7PWm0/BJzUki/TE2tf+NAvjpoKR2mIWEgl4Y1B9CoC evFbi6abztNmxBIfPv93/hTd6veeWvlSX8822FSpOiHGSk1qy2jICVBA1byQChKOvw/m Vun3Lj91OECZc0X9BFeosfg4nv8lrdwSBxziWzpdvvRmVPK8HifTiQObTDD0ST5bvn/N s5dw== X-Gm-Message-State: AOJu0YyKMOkJ4N+hrKf0uAmXWixrjQ/W5xI1Vkp0LUlgJsCxgs8sU9CC vUpnGvu2XqpUZrRPw8Me1Ezeo6k2Nt7W2vU2dTdGs256TKayC3t4YcI6StHbiRERBmNOkystT8y bTsY= X-Gm-Gg: ASbGncv2xkiMyEolS0Tw/5hl/oFGeUPXDvgbe9ikamflFWV1wPdSFGZvWPwzTYwpCAW kW8Mc3fbkRuxFKuBrpat8S89bOnaJk6ZIWVfrp+ABfShh2BXgCzQAoJmwHr+/2LwoUQXYaH+Egq RKWaXE10z8DzEaLqEOpcosKxlIDhrd8lboinooek4Qu7qRJBLc1sJqvH1SPoIOY+LJmuVjrsNiX C1b9zmhjd0tzSIGEPkD/ThkkiKo8GmYWIkTm31n6kaXIvNZ5mEuFl/jG0H0Sy6S1D/ph+GvmbsV owmjAha7y0kGAAp2ANDoK8Hq8Xk6/Qi0khtRqzJ8+8l5F5Y8TdGahBDqHgXmeGxxPw== X-Received: by 2002:a05:6000:1818:b0:38d:e304:7485 with SMTP id ffacd0b85a97d-38dea265ebfmr1914973f8f.19.1739359460764; Wed, 12 Feb 2025 03:24: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-38dc5a8a9e4sm15910608f8f.10.2025.02.12.03.24.19 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:24:20 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 01/11] hw/qdev-properties-system: Introduce EndianMode QAPI enum Date: Wed, 12 Feb 2025 12:24:03 +0100 Message-ID: <20250212112413.37553-2-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::42b; envelope-from=philmd@linaro.org; helo=mail-wr1-x42b.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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Introduce the EndianMode type and the DEFINE_PROP_ENDIAN() macros. Endianness can be BIG, LITTLE or unspecified (default). Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Thomas Huth --- qapi/common.json | 16 ++++++++++++++++ include/hw/qdev-properties-system.h | 7 +++++++ hw/core/qdev-properties-system.c | 11 +++++++++++ 3 files changed, 34 insertions(+) diff --git a/qapi/common.json b/qapi/common.json index 6ffc7a37890..217feaaf683 100644 --- a/qapi/common.json +++ b/qapi/common.json @@ -212,3 +212,19 @@ ## { 'struct': 'HumanReadableText', 'data': { 'human-readable-text': 'str' } } + +## +# @EndianMode: +# +# An enumeration of three options: little, big, and unspecified +# +# @little: Little endianness +# +# @big: Big endianness +# +# @unspecified: Endianness not specified +# +# Since: 10.0 +## +{ 'enum': 'EndianMode', + 'data': [ 'little', 'big', 'unspecified' ] } diff --git a/include/hw/qdev-properties-system.h b/include/hw/qdev-properties-system.h index 7ec37f6316c..ead4dfc2f02 100644 --- a/include/hw/qdev-properties-system.h +++ b/include/hw/qdev-properties-system.h @@ -30,6 +30,7 @@ extern const PropertyInfo qdev_prop_pcie_link_speed; extern const PropertyInfo qdev_prop_pcie_link_width; extern const PropertyInfo qdev_prop_cpus390entitlement; extern const PropertyInfo qdev_prop_iothread_vq_mapping_list; +extern const PropertyInfo qdev_prop_endian_mode; #define DEFINE_PROP_PCI_DEVFN(_n, _s, _f, _d) \ DEFINE_PROP_SIGNED(_n, _s, _f, _d, qdev_prop_pci_devfn, int32_t) @@ -97,4 +98,10 @@ extern const PropertyInfo qdev_prop_iothread_vq_mapping_list; DEFINE_PROP(_name, _state, _field, qdev_prop_iothread_vq_mapping_list, \ IOThreadVirtQueueMappingList *) +#define DEFINE_PROP_ENDIAN(_name, _state, _field, _default) \ + DEFINE_PROP_UNSIGNED(_name, _state, _field, _default, \ + qdev_prop_endian_mode, EndianMode) +#define DEFINE_PROP_ENDIAN_NODEFAULT(_name, _state, _field) \ + DEFINE_PROP_ENDIAN(_name, _state, _field, ENDIAN_MODE_UNSPECIFIED) + #endif diff --git a/hw/core/qdev-properties-system.c b/hw/core/qdev-properties-system.c index a96675beb0d..89f954f569e 100644 --- a/hw/core/qdev-properties-system.c +++ b/hw/core/qdev-properties-system.c @@ -1283,3 +1283,14 @@ const PropertyInfo qdev_prop_iothread_vq_mapping_list = { .set = set_iothread_vq_mapping_list, .release = release_iothread_vq_mapping_list, }; + +/* --- Endian modes */ + +const PropertyInfo qdev_prop_endian_mode = { + .name = "EndianMode", + .description = "Endian mode, big/little/unspecified", + .enum_table = &EndianMode_lookup, + .get = qdev_propinfo_get_enum, + .set = qdev_propinfo_set_enum, + .set_default_value = qdev_propinfo_set_default_value_enum, +}; From patchwork Wed Feb 12 11:24:04 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864437 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp67660wrt; Wed, 12 Feb 2025 03:27:12 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXBmai+EgZA91ne6ZYJxV7WjzbutnPIjjMlnWxnXVG5Wuipl9vum5YvvgzI7BYZ0rABMmm+8w==@linaro.org X-Google-Smtp-Source: AGHT+IHUq3H1aemQaqSKubk+38ub99uy2GSmi3+9YgUzHnQ+6XVj07yBlXOFp8RMNyf7vC6itC4T X-Received: by 2002:a05:620a:4894:b0:7b6:ecbb:592 with SMTP id af79cd13be357-7c06fcde2d3mr595014185a.54.1739359632156; Wed, 12 Feb 2025 03:27:12 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359632; cv=none; d=google.com; s=arc-20240605; b=Yz1MHTjJGcxDuVRi4cTruyapMXbeOO3lB/fHL4t9WTL/R8p+RXRE2mlyEjNXz1SczJ 7RQHdtTIMuoad3NKHQvklcbrHMT9hD6FlJnjb6qN1+SedrSKRQzSVJgkxdJkhCKjjwru 642+WNCqCJ+EfYR/QOqYHV/j2/b+2jQ7tHw0XDaCcma9h3UDQDUkY0dWuNSABY0R5cqK 7OPNIz9BwtSbEbedcVXe3Ei7oj1pIHW1fr2ld3e8EZWFmRJAHY1gT2Sjr5xt77BGnWRl Ljt5hygo071CgeRsn0duidA39/D5BQkHoYvGsTS844K9H+9aQ/HKYy0euBV3fGd8dQOV VtxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=XU8z5SDlqMg8EyCrH5uKeRKZNmVFxuSyhwbzpsc1Kj0=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=WQ6CzHF+m5XCXlEh14FlIjiqeGZN9zkaIgS58SceZa5Fw0mTh46vzW+od8ExEOQMSH 2ytIzn8JeUdGt6umt+V2ubn5JTDBr0io0A89wd0K88xGfc2qjwOeVjhbrbkkcufrd4t4 l5hMe2Vz740TUJObFylQ4ZOqdnn5/BQ3/NFX5CgcmvwC+oFIr+ZIV9witcWtyoplOdVO vFXLmDSPHbK5MFetZWtu+7J6lY0MsEvmP7ITVnyGYoSfHoHhdY3RjtnbdPRycIqN4sd/ WAfgzgqPOz0OmPvTrx4c/y1QQVRdvx/uJvt/1BY6OKLd8wdlXrr5gAbGyFmVm/CXSDVQ 7Nkw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=P8bFVBmi; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id af79cd13be357-7c05adf6356si684894685a.33.2025.02.12.03.27.11 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:27:12 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=P8bFVBmi; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiAr9-00064i-1p; Wed, 12 Feb 2025 06:24:39 -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 1tiAr1-0005yw-VK for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:33 -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 1tiAqx-0004Uf-E0 for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:31 -0500 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-436ce2ab251so46593675e9.1 for ; Wed, 12 Feb 2025 03:24:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359465; x=1739964265; 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=XU8z5SDlqMg8EyCrH5uKeRKZNmVFxuSyhwbzpsc1Kj0=; b=P8bFVBmiVtp8Lgw1+z9UUuMM3BqimArLl+Pzd2ltauVCsxB4fk8Q5gL/AFYrfo5mh0 X2m5a3w9VQDUZGXV/dYQX8uVtZk+ePPYk9JXRm8sEz3NaAstkj4zmxV0SCNnqtz73cOm cjskmQ/gTo93ZTai1MBV+VVp8K/39xtg2F3gT/o18TBOJDa9RDT1xbFtPBlg8ltJnBfO 9oxXrcihmeeNX+Rk8Vgay76NBZBRY7ZUEJzX6q/Dnk1/h8QuWSrVSeYbjabCFmOPzT+n wxNDvt68GrQXcaCS8CmIKcCKio+uaz7sPfrPhaGqKKpVjB7vib6imCdjH8G5A0nWNGZ4 YK9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359465; x=1739964265; 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=XU8z5SDlqMg8EyCrH5uKeRKZNmVFxuSyhwbzpsc1Kj0=; b=poGYh1AIBcW2kPgrteCQAlFvZVO4GJckyTW9VpriTUEYWoqyMP7nDmLgG8irxaj6st M8s23u6YHbnq584YzZg1cDksbCtpmf1eTey4avVcflVb7l+366YtEsSZBGp4iY6MvXK/ tVXZVDegNz2lzp6eIDFuX5sx2w6HTyl8x/UbGaAVBHjIEL2IZbMqfaCzaWrW4csFOAWm D3s9FwX8WuPtuiTCqDEqN8fzk4UFzTUs5YWJC4xrU3RqY6Uyi9AdAXjz9PZAU5BXFA5g tJn5Xz5fwihqiie77puKz8ufkgHZECQqX+EAo6NYKzuhgd7tbadAT3mlsmGpJukpxv4T a/nw== X-Gm-Message-State: AOJu0YzfQd9jJAQsuhzJ8aCxeriwolpJ9UjI4ivD1pc7j1yJV6N1a8/z kMb4T8DbLfkLvbsl/9eOGpDT6sexn2uJs5iWWHJ04NOospWdUVNqYVFLzDJBU4v2UCSWhZIEwXX Sp9o= X-Gm-Gg: ASbGncvspKsHIGdVzk6EyR4yl+zJtr1PzycXQkpd0uVvdT9DVRg8hQhgZZ6tPjWH+N1 qsw/ZAtDJz8ZC5rLClS/SThG7U2yc3Xmf7Z926xtpdTvtf9fcj/n88p79frMZ4w0bFLT9d2Klzu 5PuYq6LEBaUz+KfkXzV4fIGRoiSClp4vYjnxJ2pgDFhoaP7zo5RxTOCwO4gFB/6TXx8jjLwz9ZI iYwgLS94VenLhjGFCWIF/EuL0dI0MPgG4QJ9K1AIYIn014JoZXZUl2RvE4y4Er0+x+L9i4oWk2j E/YzVdLnv3OhHQSnkJpS4UBl/HdL2ZJ7Aova+9IKV1I71hvAKc6A9I1hKUtJg1yipw== X-Received: by 2002:a05:6000:1863:b0:38b:d9a3:6cff with SMTP id ffacd0b85a97d-38dea26e512mr2637841f8f.16.1739359465578; Wed, 12 Feb 2025 03:24:25 -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-38dc9ce31e8sm14479989f8f.5.2025.02.12.03.24.24 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:24:25 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 02/11] hw/intc/xilinx_intc: Make device endianness configurable Date: Wed, 12 Feb 2025 12:24:04 +0100 Message-ID: <20250212112413.37553-3-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Replace the DEVICE_NATIVE_ENDIAN MemoryRegionOps by a pair of DEVICE_LITTLE_ENDIAN / DEVICE_BIG_ENDIAN. Add the "little-endian" property to select the device endianness, defaulting to little endian. Set the proper endianness for each machine using the device. Signed-off-by: Philippe Mathieu-Daudé --- hw/intc/xilinx_intc.c | 60 ++++++++++++++++++------ hw/microblaze/petalogix_ml605_mmu.c | 1 + hw/microblaze/petalogix_s3adsp1800_mmu.c | 3 ++ hw/ppc/virtex_ml507.c | 1 + hw/riscv/microblaze-v-generic.c | 1 + 5 files changed, 52 insertions(+), 14 deletions(-) diff --git a/hw/intc/xilinx_intc.c b/hw/intc/xilinx_intc.c index 6930f83907a..523402b688c 100644 --- a/hw/intc/xilinx_intc.c +++ b/hw/intc/xilinx_intc.c @@ -3,6 +3,9 @@ * * Copyright (c) 2009 Edgar E. Iglesias. * + * https://docs.amd.com/v/u/en-US/xps_intc + * DS572: LogiCORE IP XPS Interrupt Controller (v2.01a) + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights @@ -23,10 +26,12 @@ */ #include "qemu/osdep.h" +#include "qapi/error.h" #include "hw/sysbus.h" #include "qemu/module.h" #include "hw/irq.h" #include "hw/qdev-properties.h" +#include "hw/qdev-properties-system.h" #include "qom/object.h" #define D(x) @@ -49,6 +54,7 @@ struct XpsIntc { SysBusDevice parent_obj; + EndianMode model_endianness; MemoryRegion mmio; qemu_irq parent_irq; @@ -140,18 +146,29 @@ static void pic_write(void *opaque, hwaddr addr, update_irq(p); } -static const MemoryRegionOps pic_ops = { - .read = pic_read, - .write = pic_write, - .endianness = DEVICE_NATIVE_ENDIAN, - .impl = { - .min_access_size = 4, - .max_access_size = 4, +static const MemoryRegionOps pic_ops[2] = { + [0 ... 1] = { + .read = pic_read, + .write = pic_write, + .endianness = DEVICE_BIG_ENDIAN, + .impl = { + .min_access_size = 4, + .max_access_size = 4, + }, + .valid = { + /* + * All XPS INTC registers are accessed through the PLB interface. + * The base address for these registers is provided by the + * configuration parameter, C_BASEADDR. Each register is 32 bits + * although some bits may be unused and is accessed on a 4-byte + * boundary offset from the base address. + */ + .min_access_size = 4, + .max_access_size = 4, + }, }, - .valid = { - .min_access_size = 4, - .max_access_size = 4 - } + [ENDIAN_MODE_BIG].endianness = DEVICE_BIG_ENDIAN, + [ENDIAN_MODE_LITTLE].endianness = DEVICE_LITTLE_ENDIAN, }; static void irq_handler(void *opaque, int irq, int level) @@ -174,13 +191,27 @@ static void xilinx_intc_init(Object *obj) qdev_init_gpio_in(DEVICE(obj), irq_handler, 32); sysbus_init_irq(SYS_BUS_DEVICE(obj), &p->parent_irq); - - memory_region_init_io(&p->mmio, obj, &pic_ops, p, "xlnx.xps-intc", - R_MAX * 4); sysbus_init_mmio(SYS_BUS_DEVICE(obj), &p->mmio); } +static void xilinx_intc_realize(DeviceState *dev, Error **errp) +{ + XpsIntc *p = XILINX_INTC(dev); + + if (p->model_endianness == ENDIAN_MODE_UNSPECIFIED) { + error_setg(errp, TYPE_XILINX_INTC " property 'endianness'" + " must be set to 'big' or 'little'"); + return; + } + + memory_region_init_io(&p->mmio, OBJECT(dev), + &pic_ops[p->model_endianness], + p, "xlnx.xps-intc", + R_MAX * 4); +} + static const Property xilinx_intc_properties[] = { + DEFINE_PROP_ENDIAN_NODEFAULT("endianness", XpsIntc, model_endianness), DEFINE_PROP_UINT32("kind-of-intr", XpsIntc, c_kind_of_intr, 0), }; @@ -188,6 +219,7 @@ static void xilinx_intc_class_init(ObjectClass *klass, void *data) { DeviceClass *dc = DEVICE_CLASS(klass); + dc->realize = xilinx_intc_realize; device_class_set_props(dc, xilinx_intc_properties); } diff --git a/hw/microblaze/petalogix_ml605_mmu.c b/hw/microblaze/petalogix_ml605_mmu.c index 8b44be75a22..55398cc67d1 100644 --- a/hw/microblaze/petalogix_ml605_mmu.c +++ b/hw/microblaze/petalogix_ml605_mmu.c @@ -111,6 +111,7 @@ petalogix_ml605_init(MachineState *machine) dev = qdev_new("xlnx.xps-intc"); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_LITTLE); qdev_prop_set_uint32(dev, "kind-of-intr", 1 << TIMER_IRQ); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, INTC_BASEADDR); diff --git a/hw/microblaze/petalogix_s3adsp1800_mmu.c b/hw/microblaze/petalogix_s3adsp1800_mmu.c index 2c0d8c34cd2..15cabe11777 100644 --- a/hw/microblaze/petalogix_s3adsp1800_mmu.c +++ b/hw/microblaze/petalogix_s3adsp1800_mmu.c @@ -71,6 +71,8 @@ petalogix_s3adsp1800_init(MachineState *machine) MemoryRegion *phys_ram = g_new(MemoryRegion, 1); qemu_irq irq[32]; MemoryRegion *sysmem = get_system_memory(); + EndianMode endianness = TARGET_BIG_ENDIAN ? ENDIAN_MODE_BIG + : ENDIAN_MODE_LITTLE; cpu = MICROBLAZE_CPU(object_new(TYPE_MICROBLAZE_CPU)); object_property_set_str(OBJECT(cpu), "version", "7.10.d", &error_abort); @@ -95,6 +97,7 @@ petalogix_s3adsp1800_init(MachineState *machine) 64 * KiB, 1, 0x89, 0x18, 0x0000, 0x0, 1); dev = qdev_new("xlnx.xps-intc"); + qdev_prop_set_enum(dev, "endianness", endianness); qdev_prop_set_uint32(dev, "kind-of-intr", 1 << ETHLITE_IRQ | 1 << UARTLITE_IRQ); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); diff --git a/hw/ppc/virtex_ml507.c b/hw/ppc/virtex_ml507.c index 23238119273..df8f9644829 100644 --- a/hw/ppc/virtex_ml507.c +++ b/hw/ppc/virtex_ml507.c @@ -217,6 +217,7 @@ static void virtex_init(MachineState *machine) cpu_irq = qdev_get_gpio_in(DEVICE(cpu), PPC40x_INPUT_INT); dev = qdev_new("xlnx.xps-intc"); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_BIG); qdev_prop_set_uint32(dev, "kind-of-intr", 0); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, INTC_BASEADDR); diff --git a/hw/riscv/microblaze-v-generic.c b/hw/riscv/microblaze-v-generic.c index 26788a1824a..ebdd461ae98 100644 --- a/hw/riscv/microblaze-v-generic.c +++ b/hw/riscv/microblaze-v-generic.c @@ -79,6 +79,7 @@ static void mb_v_generic_init(MachineState *machine) memory_region_add_subregion(sysmem, ddr_base, phys_ram); dev = qdev_new("xlnx.xps-intc"); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_LITTLE); qdev_prop_set_uint32(dev, "kind-of-intr", 1 << UARTLITE_IRQ); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); From patchwork Wed Feb 12 11:24:05 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864435 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp67561wrt; Wed, 12 Feb 2025 03:26:49 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUNYV8BZGbRxS+2BfYFQClHdnCr4inH3dp8ii6I2Ub/TB0Ck1nX0sg7sqj65B8/ZQ1jq2Tt9A==@linaro.org X-Google-Smtp-Source: AGHT+IEBhcbHPNSBTn//kGU2ceBRTUVaXFRoMCmo2F3XAYyYjj/4q7T+shsLzEsqii2AXFJMDwfQ X-Received: by 2002:a05:620a:1aaa:b0:7b6:d90f:e4ca with SMTP id af79cd13be357-7c070735f36mr386442785a.26.1739359609506; Wed, 12 Feb 2025 03:26:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359609; cv=none; d=google.com; s=arc-20240605; b=hZj0h5MQudG4wPVkxFFMB1x8GYn+38waVclttwYFAgAtAbuzcT0wKR8sFGUudLIg1o Ql0fAztZG2+h/z1ojB7fCICx1ibYeABFoxvFpjRE2rfmBTzb05ZPsKsNTrDOxx8Ndk68 lylJbjoX9SGToHz83rIFwC3dutKelQs+a19MD3fXknRrQNxMwkHf3q5TocZ9goZeNiwj cWQ44WnbS1JYMn5u6Km/yUdAM+zfWNiqa/+lBOSEKbdotvJEwV8F+vYg+eV8tmwM7ZPC RwpkRR5IslTt4JO/tLStLnrIwjhSsSCuaGYitl64rGcUZZ6G5ovJZbpk89KHDmBikP64 1ioA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=yr92SnJb/t6uJ0pr1wRWm/Vbw0XgzndiQO45zL1RuJw=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=F5DrisvjBKJvayjGJpNL6vSmjPsVPGmWq1mHGp+b3cG9QU9p0+In3dr0NsDs0at2CS 2udFe7HH2jIYhrOEoaBo3nNQW0T4hkC+foWp2vpQ9Q8uNDU2E7+eiFDq/L3IYaUDiyey W/RijnibkP/JjDpsF3zqPDt8R0eysgrQZTCuVUoEkw3oBfy2z7f6lPX8Y6BaJ37JE7Yi RnCymkl9Teb1Ov/VV3TzncAVjQoSSRETBzfk5xOjvNBkqB+Wh/GHj2BRqreT7CtKjnUX cVh8rkx4v3xMklnP8MSaJLjGVdzveDtqeVUNVVbEU3Czt4XVqJ7V16V3P1eGy70/mRQL //hA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=NAkN090K; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47192512f06si63260461cf.55.2025.02.12.03.26.49 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:26:49 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=NAkN090K; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiAr9-00064Y-0w; Wed, 12 Feb 2025 06:24:39 -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 1tiAr6-00060k-10 for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:36 -0500 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tiAr2-0004WK-Oc for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:35 -0500 Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-4394036c0efso22737025e9.2 for ; Wed, 12 Feb 2025 03:24:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359470; x=1739964270; 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=yr92SnJb/t6uJ0pr1wRWm/Vbw0XgzndiQO45zL1RuJw=; b=NAkN090Kp0FZ87RlLMLOskOtXGnU8F61w3udpOzm+j0otFfsZiq6cqpVxJDVtpcC6a cVaxYSHYhG0mgP2d5Bm45b2WN/+uXV8IiMFtVjjSP1FQMgYPjaUVRXpfOPcWqfLU7v0x zBLH9wqkOD/06/ohkRncU1KI7AgZygESFmD8HtNU89yeZxDcC9DdJefbF7wocVFrdcgQ KOMHpAE5lOQvaV8M7KN2Jwp82YzkP44zjLTlJDrtnwM3hQPiIjyHnmE0FHNp/3fUagQR wgT3j6YlCw6e3dLy//CKEDbWxkm1XWg2yMSlm53pR0PlcHXDIM/d2bbWRJS7/jfaicQw Gazg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359470; x=1739964270; 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=yr92SnJb/t6uJ0pr1wRWm/Vbw0XgzndiQO45zL1RuJw=; b=MF6Wpukk/jSpoKaJSystj1u07XF1rV0/3GILhTsiPAqoP61GQLvbszEL59XUIr19Yd OsR3c4oz1ErRNlYofRB93Xx95LYkvtnB+U5KuRK2lJZ3V+ds8oAn2Kcu/8+PtEqY+G2E Agal2Ka4YvBa2n+lZkP14vMH1BwChuyinTTk8f9oiIgcDMXLLeU8yrwFIfPTTb+eKzVH J0Exqn1pTOC+5jCeMT3+lB64rVQQYAhX0qAjqkpBKy6QtvgiVPb+D4/CeAsseaz4iYEC BU5MBQtEOoiRZDRxmns68WW8xIT+GGGSXNc2G2xjmL6H7tIjCdfbC+BPClkvMt/Su55o O63g== X-Gm-Message-State: AOJu0Ywn1TFLBwJBMDwFzB0DV/iXojIgJ10/VF0drvvlKsYfb6k/3uDd UFEwao/HQzLDnBt2d+Bx5d1e//2HntHczc33ITLPcRytyNq/DFttGGEfZTx39XKVbdyOQvOopor sUpo= X-Gm-Gg: ASbGncuSemDxiI1gfRoufjjhfGLGcL7N/SRjVJBN7Cv0OSIBZTNTGKEOoJ5JCDwKeWs hdZ0q6K3gGoDBfHHjvqq0GKco6CkdPPlj0mm3b2vuVSk+OlbadOKkELfFO778kVzgYjfKCHglNA 2aIo2V4HELMOqLDHwi6nQ7RDpWatI4qlvLEAISRnZ5t8yK6IVQSo0PKO09s+j22Qp0Uce0j+Kf2 VUwacl/2g2JO3LUW8pAJoKb7OzMNoumQ2dfzdxKVR2KS9M2U8lJgYmR4p+iJhLpe1DMyRZ/Gh2e J/8FY1hsj0MgBEcqptRSvnDMcxXGvugGMv5ukfgpAWU3mGHBzgw9cfh7Is1xLVvPAQ== X-Received: by 2002:a05:600c:3110:b0:439:35d2:ed2 with SMTP id 5b1f17b1804b1-4395815f593mr26649235e9.2.1739359470337; Wed, 12 Feb 2025 03:24:30 -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-4395a06b1ddsm16974895e9.22.2025.02.12.03.24.29 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:24:29 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 03/11] hw/net/xilinx_ethlite: Make device endianness configurable Date: Wed, 12 Feb 2025 12:24:05 +0100 Message-ID: <20250212112413.37553-4-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::336; envelope-from=philmd@linaro.org; helo=mail-wm1-x336.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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Replace the DEVICE_NATIVE_ENDIAN MemoryRegionOps by a pair of DEVICE_LITTLE_ENDIAN / DEVICE_BIG_ENDIAN. Add the "little-endian" property to select the device endianness, defaulting to little endian. Set the proper endianness on the single machine using the device. Signed-off-by: Philippe Mathieu-Daudé --- hw/microblaze/petalogix_s3adsp1800_mmu.c | 1 + hw/net/xilinx_ethlite.c | 27 ++++++++++++++++++------ hw/riscv/microblaze-v-generic.c | 1 + 3 files changed, 23 insertions(+), 6 deletions(-) diff --git a/hw/microblaze/petalogix_s3adsp1800_mmu.c b/hw/microblaze/petalogix_s3adsp1800_mmu.c index 15cabe11777..d419dc49a25 100644 --- a/hw/microblaze/petalogix_s3adsp1800_mmu.c +++ b/hw/microblaze/petalogix_s3adsp1800_mmu.c @@ -123,6 +123,7 @@ petalogix_s3adsp1800_init(MachineState *machine) sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, irq[TIMER_IRQ]); dev = qdev_new("xlnx.xps-ethernetlite"); + qdev_prop_set_enum(dev, "endianness", endianness); qemu_configure_nic_device(dev, true, NULL); qdev_prop_set_uint32(dev, "tx-ping-pong", 0); qdev_prop_set_uint32(dev, "rx-ping-pong", 0); diff --git a/hw/net/xilinx_ethlite.c b/hw/net/xilinx_ethlite.c index 14bf2b2e17a..c1cb54a27af 100644 --- a/hw/net/xilinx_ethlite.c +++ b/hw/net/xilinx_ethlite.c @@ -34,6 +34,7 @@ #include "hw/sysbus.h" #include "hw/irq.h" #include "hw/qdev-properties.h" +#include "hw/qdev-properties-system.h" #include "hw/misc/unimp.h" #include "net/net.h" #include "trace.h" @@ -85,6 +86,7 @@ struct XlnxXpsEthLite { SysBusDevice parent_obj; + EndianMode model_endianness; MemoryRegion container; qemu_irq irq; NICState *nic; @@ -183,10 +185,10 @@ static void port_tx_write(void *opaque, hwaddr addr, uint64_t value, } } -static const MemoryRegionOps eth_porttx_ops = { +static const MemoryRegionOps eth_porttx_ops[2] = { + [0 ... 1] = { .read = port_tx_read, .write = port_tx_write, - .endianness = DEVICE_NATIVE_ENDIAN, .impl = { .min_access_size = 4, .max_access_size = 4, @@ -195,6 +197,9 @@ static const MemoryRegionOps eth_porttx_ops = { .min_access_size = 4, .max_access_size = 4, }, + }, + [ENDIAN_MODE_BIG].endianness = DEVICE_BIG_ENDIAN, + [ENDIAN_MODE_LITTLE].endianness = DEVICE_LITTLE_ENDIAN, }; static uint64_t port_rx_read(void *opaque, hwaddr addr, unsigned int size) @@ -232,10 +237,10 @@ static void port_rx_write(void *opaque, hwaddr addr, uint64_t value, } } -static const MemoryRegionOps eth_portrx_ops = { +static const MemoryRegionOps eth_portrx_ops[2] = { + [0 ... 1] = { .read = port_rx_read, .write = port_rx_write, - .endianness = DEVICE_NATIVE_ENDIAN, .impl = { .min_access_size = 4, .max_access_size = 4, @@ -244,6 +249,9 @@ static const MemoryRegionOps eth_portrx_ops = { .min_access_size = 4, .max_access_size = 4, }, + }, + [ENDIAN_MODE_BIG].endianness = DEVICE_BIG_ENDIAN, + [ENDIAN_MODE_LITTLE].endianness = DEVICE_LITTLE_ENDIAN, }; static bool eth_can_rx(NetClientState *nc) @@ -301,6 +309,12 @@ static void xilinx_ethlite_realize(DeviceState *dev, Error **errp) { XlnxXpsEthLite *s = XILINX_ETHLITE(dev); + if (s->model_endianness == ENDIAN_MODE_UNSPECIFIED) { + error_setg(errp, TYPE_XILINX_ETHLITE " property 'endianness'" + " must be set to 'big' or 'little'"); + return; + } + memory_region_init(&s->container, OBJECT(dev), "xlnx.xps-ethernetlite", 0x2000); @@ -328,7 +342,7 @@ static void xilinx_ethlite_realize(DeviceState *dev, Error **errp) BUFSZ_MAX, &error_abort); memory_region_add_subregion(&s->container, 0x0800 * i, &s->port[i].txbuf); memory_region_init_io(&s->port[i].txio, OBJECT(dev), - ð_porttx_ops, s, + ð_porttx_ops[s->model_endianness], s, i ? "ethlite.tx[1]io" : "ethlite.tx[0]io", 4 * TX_MAX); memory_region_add_subregion(&s->container, i ? A_TX_BASE1 : A_TX_BASE0, @@ -340,7 +354,7 @@ static void xilinx_ethlite_realize(DeviceState *dev, Error **errp) memory_region_add_subregion(&s->container, 0x1000 + 0x0800 * i, &s->port[i].rxbuf); memory_region_init_io(&s->port[i].rxio, OBJECT(dev), - ð_portrx_ops, s, + ð_portrx_ops[s->model_endianness], s, i ? "ethlite.rx[1]io" : "ethlite.rx[0]io", 4 * RX_MAX); memory_region_add_subregion(&s->container, i ? A_RX_BASE1 : A_RX_BASE0, @@ -363,6 +377,7 @@ static void xilinx_ethlite_init(Object *obj) } static const Property xilinx_ethlite_properties[] = { + DEFINE_PROP_ENDIAN_NODEFAULT("endianness", XlnxXpsEthLite, model_endianness), DEFINE_PROP_UINT32("tx-ping-pong", XlnxXpsEthLite, c_tx_pingpong, 1), DEFINE_PROP_UINT32("rx-ping-pong", XlnxXpsEthLite, c_rx_pingpong, 1), DEFINE_NIC_PROPERTIES(XlnxXpsEthLite, conf), diff --git a/hw/riscv/microblaze-v-generic.c b/hw/riscv/microblaze-v-generic.c index ebdd461ae98..a21fdfbe6db 100644 --- a/hw/riscv/microblaze-v-generic.c +++ b/hw/riscv/microblaze-v-generic.c @@ -120,6 +120,7 @@ static void mb_v_generic_init(MachineState *machine) /* Emaclite */ dev = qdev_new("xlnx.xps-ethernetlite"); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_LITTLE); qemu_configure_nic_device(dev, true, NULL); qdev_prop_set_uint32(dev, "tx-ping-pong", 0); qdev_prop_set_uint32(dev, "rx-ping-pong", 0); From patchwork Wed Feb 12 11:24:06 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864433 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp67180wrt; Wed, 12 Feb 2025 03:25:34 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCW3Ny3ntQ93Rgs7xfQxZ46dRMJjehXH1/ywzVOrrNTFFKsgC6vL/2MRNQU/IPu0r0n5wDMDgA==@linaro.org X-Google-Smtp-Source: AGHT+IERhrRt1tHLh3fASqCjl1J2Q5fLa2unppwOnylGgzhOxsOd6RZMASAnTQDuanZyForOVouM X-Received: by 2002:ac8:7fd4:0:b0:466:d559:b528 with SMTP id d75a77b69052e-471aff9994cmr41699371cf.17.1739359534092; Wed, 12 Feb 2025 03:25:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359534; cv=none; d=google.com; s=arc-20240605; b=CxMbyuJE2WSGzcaKXZYNQeEqGsr5vXPwEXatATQxeSBEJ+SHqWxJdFvnDbi3RGL/hp 4BzJlO3j1Twjho4HV0xnIDBb/YXXlKs4VD58tyEZ+fvticduW912Dnxz0f11Vl4qbTNh H/UNQTtfMSFny7n5lXgSSrrYgyYV0LkSnMj0mQLPbeH2m77w95ft4xIe7E7bLx0TVc6C 6V3TCmF9xJ8iRKPhkmVZW1fuYkMY8kgRFINsQmsF8bIP8nEZfJKJ4LbufWKAiwzS6e96 54MiedSFWCL7J45tnc5gYO+9nAl4EGJuee+c050JZ2KZ8Tm4Koz0la0SD73oMsKOMMjt cGqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=5sBJFg/2U3gLaznSuaixmYZ3AuMYFa/wvF5v+/9TO7s=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=PEo1lxY50tgP8XOA29xSpHTQ+we3/AcBFwheUsHIIkOlecRGXLPDaV7ivFHA48A+iS fXJaRmwnE0kEGlJGdgqV22+R0y1vIlbGcsr1c0XAc+f4DkOGVuaaa6HG8kJTRdWEaTZK uAhpOyTblcildlSu6Js3Q2lMilhhaRQv8E2/RzpP6F708iiv2dwcof0Uyd9GgO6p9ACf iqf4DROlwIUOupuJhmxuVb4fAAoccIiIq1b2me4rtPGYL9pY1FUIqsnOuAJMdE125r5U nSsnNyERGfVVX6etbpDuW71qUcDw1oF5O/SvXoDBGpDHgqIjbOdm+u7I+z4xanZKHQOK wlLg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=UCuySHPH; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-4718bfa9c0esi67400831cf.305.2025.02.12.03.25.33 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:25:34 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=UCuySHPH; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiArB-00066y-JO; Wed, 12 Feb 2025 06:24:41 -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 1tiArA-00066Z-WD for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:41 -0500 Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tiAr7-0004Xe-36 for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:40 -0500 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-38dc9eba8a1so4347635f8f.1 for ; Wed, 12 Feb 2025 03:24:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359475; x=1739964275; 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=5sBJFg/2U3gLaznSuaixmYZ3AuMYFa/wvF5v+/9TO7s=; b=UCuySHPHXCYpTq5su3ihQ9KJ+jcbi078VqspFqiK4IovfLttDyBmUO6OxFFBf7R0uq gg0v2ZXZVLg3FMm8TfE2yy4biPnPvtUffjx/T9m8SyAs7d7ygkGMOnE/lsv33Zpg9UwD vPM+Q5DDlSD6NENsL54che5x4GTeLeqQgXTViDKwt/Q0mI6cm9/nPS3hAA4EDisch167 y0J107TKP3knTVn1EdeKfSbelMFyPaq/uY3jIfGWDVv1l0yHAdyoJQIr/kASTgUgU7Vw ZsCtCFDFnR9eEB9ruGi8Cw2WypXNwxElPBNCZxKNh5HmFiZyrLV1FwY19StAdZGKxhhP +Dnw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359475; x=1739964275; 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=5sBJFg/2U3gLaznSuaixmYZ3AuMYFa/wvF5v+/9TO7s=; b=Z3m9WOxKs8OWzh9GASXE/nl9yShl9ig2dBEqxU2W9ZNFjHWsdxZR2ewqIL+u6w5REf acA8GuWUydYgwmxl9JdfhwRXPR9+FSFxXL20X5fGNMmR481O09F522Hp0Q4op7uP2y8O UaAy+YU+2hnnRoRA9daYV+0nGRpbH9c/JnvjNERCzf51H0mBJELlf0vaGcGrA9b8krzK TGuLSe004uIzoAVWM6ydQUaQGnYzj4K2RbwOltESp1sUuwIK0m5JKMho5jzSwUYLiBlB f9xF82p0jBYQJuYQBjs/UMQCEwRzjyTo0xW/H6vfFbTGL3XOIiIcbDK9/KEGkft6MR0k ZITg== X-Gm-Message-State: AOJu0Yw0LEEd4Og05jPMgdEfD3QtVbXOqGVMvx6ZhSkDa9jW+YI28EVq /DdpcpzPQgXMbZAIn2y3U8ptLd8EWKuVG4bYAlOrHYgb+8RWplxpYQY4N5KDs82LC2O+CAhANph F8T4= X-Gm-Gg: ASbGncu60rmf638xqmQRgTbybAhXO0wYxi+iU5GPBRF9EV/S0cZ2kp/M5MM7idsX7Sj m8lI2UrZkFqx3KizKKIVZF3pJggpYoteGqp7DwUmU5IbBjVOYCi45BqtzNTGa0vbgfrO+BugFw5 /75WDJue+ry+fHRRaU+V0r49UtylEytZIewEKaZ8Od9HylWs0rQHn/jsTPCXXXo9TURjMDbAALH djPLQAoi+5Xicwl5Cj7yJdR44JsAcjkUx+2attOMC7J3oU/jeUvA3QorNgvz+xZ4svIwU9ettqh qQDj7YLut2W/T8Bhzo3jtWGdxqUraeYKVXdCmekjLligx8zEb/8AdwvqL/OUP0uJtA== X-Received: by 2002:adf:f08c:0:b0:38d:dce7:86cd with SMTP id ffacd0b85a97d-38dea28f6d6mr1798830f8f.24.1739359475092; Wed, 12 Feb 2025 03:24:35 -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-38dc5839877sm15541563f8f.3.2025.02.12.03.24.34 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:24:34 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 04/11] hw/timer/xilinx_timer: Make device endianness configurable Date: Wed, 12 Feb 2025 12:24:06 +0100 Message-ID: <20250212112413.37553-5-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::429; envelope-from=philmd@linaro.org; helo=mail-wr1-x429.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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Replace the DEVICE_NATIVE_ENDIAN MemoryRegionOps by a pair of DEVICE_LITTLE_ENDIAN / DEVICE_BIG_ENDIAN. Add the "little-endian" property to select the device endianness, defaulting to little endian. Set the proper endianness for each machine using the device. Signed-off-by: Philippe Mathieu-Daudé --- hw/microblaze/petalogix_ml605_mmu.c | 1 + hw/microblaze/petalogix_s3adsp1800_mmu.c | 1 + hw/ppc/virtex_ml507.c | 1 + hw/riscv/microblaze-v-generic.c | 2 ++ hw/timer/xilinx_timer.c | 43 +++++++++++++++++------- 5 files changed, 35 insertions(+), 13 deletions(-) diff --git a/hw/microblaze/petalogix_ml605_mmu.c b/hw/microblaze/petalogix_ml605_mmu.c index 55398cc67d1..490640e9428 100644 --- a/hw/microblaze/petalogix_ml605_mmu.c +++ b/hw/microblaze/petalogix_ml605_mmu.c @@ -127,6 +127,7 @@ petalogix_ml605_init(MachineState *machine) /* 2 timers at irq 2 @ 100 Mhz. */ dev = qdev_new("xlnx.xps-timer"); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_LITTLE); qdev_prop_set_uint32(dev, "one-timer-only", 0); qdev_prop_set_uint32(dev, "clock-frequency", 100 * 1000000); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); diff --git a/hw/microblaze/petalogix_s3adsp1800_mmu.c b/hw/microblaze/petalogix_s3adsp1800_mmu.c index d419dc49a25..caaea222a8c 100644 --- a/hw/microblaze/petalogix_s3adsp1800_mmu.c +++ b/hw/microblaze/petalogix_s3adsp1800_mmu.c @@ -116,6 +116,7 @@ petalogix_s3adsp1800_init(MachineState *machine) /* 2 timers at irq 2 @ 62 Mhz. */ dev = qdev_new("xlnx.xps-timer"); + qdev_prop_set_enum(dev, "endianness", endianness); qdev_prop_set_uint32(dev, "one-timer-only", 0); qdev_prop_set_uint32(dev, "clock-frequency", 62 * 1000000); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); diff --git a/hw/ppc/virtex_ml507.c b/hw/ppc/virtex_ml507.c index df8f9644829..a01354d991d 100644 --- a/hw/ppc/virtex_ml507.c +++ b/hw/ppc/virtex_ml507.c @@ -231,6 +231,7 @@ static void virtex_init(MachineState *machine) /* 2 timers at irq 2 @ 62 Mhz. */ dev = qdev_new("xlnx.xps-timer"); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_BIG); qdev_prop_set_uint32(dev, "one-timer-only", 0); qdev_prop_set_uint32(dev, "clock-frequency", 62 * 1000000); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); diff --git a/hw/riscv/microblaze-v-generic.c b/hw/riscv/microblaze-v-generic.c index a21fdfbe6db..3c79f5733b2 100644 --- a/hw/riscv/microblaze-v-generic.c +++ b/hw/riscv/microblaze-v-generic.c @@ -104,6 +104,7 @@ static void mb_v_generic_init(MachineState *machine) /* 2 timers at irq 0 @ 100 Mhz. */ dev = qdev_new("xlnx.xps-timer"); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_LITTLE); qdev_prop_set_uint32(dev, "one-timer-only", 0); qdev_prop_set_uint32(dev, "clock-frequency", 100000000); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); @@ -112,6 +113,7 @@ static void mb_v_generic_init(MachineState *machine) /* 2 timers at irq 3 @ 100 Mhz. */ dev = qdev_new("xlnx.xps-timer"); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_LITTLE); qdev_prop_set_uint32(dev, "one-timer-only", 0); qdev_prop_set_uint32(dev, "clock-frequency", 100000000); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); diff --git a/hw/timer/xilinx_timer.c b/hw/timer/xilinx_timer.c index 6595cf5f517..8cd44fd6925 100644 --- a/hw/timer/xilinx_timer.c +++ b/hw/timer/xilinx_timer.c @@ -3,6 +3,9 @@ * * Copyright (c) 2009 Edgar E. Iglesias. * + * DS573: https://docs.amd.com/v/u/en-US/xps_timer + * LogiCORE IP XPS Timer/Counter (v1.02a) + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights @@ -23,10 +26,12 @@ */ #include "qemu/osdep.h" +#include "qapi/error.h" #include "hw/sysbus.h" #include "hw/irq.h" #include "hw/ptimer.h" #include "hw/qdev-properties.h" +#include "hw/qdev-properties-system.h" #include "qemu/log.h" #include "qemu/module.h" #include "qom/object.h" @@ -69,6 +74,7 @@ struct XpsTimerState { SysBusDevice parent_obj; + EndianMode model_endianness; MemoryRegion mmio; qemu_irq irq; uint8_t one_timer_only; @@ -189,18 +195,21 @@ timer_write(void *opaque, hwaddr addr, timer_update_irq(t); } -static const MemoryRegionOps timer_ops = { - .read = timer_read, - .write = timer_write, - .endianness = DEVICE_NATIVE_ENDIAN, - .impl = { - .min_access_size = 4, - .max_access_size = 4, +static const MemoryRegionOps timer_ops[2] = { + [0 ... 1] = { + .read = timer_read, + .write = timer_write, + .impl = { + .min_access_size = 4, + .max_access_size = 4, + }, + .valid = { + .min_access_size = 4, + .max_access_size = 4, + }, }, - .valid = { - .min_access_size = 4, - .max_access_size = 4 - } + [ENDIAN_MODE_BIG].endianness = DEVICE_BIG_ENDIAN, + [ENDIAN_MODE_LITTLE].endianness = DEVICE_LITTLE_ENDIAN, }; static void timer_hit(void *opaque) @@ -220,6 +229,12 @@ static void xilinx_timer_realize(DeviceState *dev, Error **errp) XpsTimerState *t = XILINX_TIMER(dev); unsigned int i; + if (t->model_endianness == ENDIAN_MODE_UNSPECIFIED) { + error_setg(errp, TYPE_XILINX_TIMER " property 'endianness'" + " must be set to 'big' or 'little'"); + return; + } + /* Init all the ptimers. */ t->timers = g_malloc0(sizeof t->timers[0] * num_timers(t)); for (i = 0; i < num_timers(t); i++) { @@ -233,8 +248,9 @@ static void xilinx_timer_realize(DeviceState *dev, Error **errp) ptimer_transaction_commit(xt->ptimer); } - memory_region_init_io(&t->mmio, OBJECT(t), &timer_ops, t, "xlnx.xps-timer", - R_MAX * 4 * num_timers(t)); + memory_region_init_io(&t->mmio, OBJECT(t), + &timer_ops[t->model_endianness], t, + "xlnx.xps-timer", R_MAX * 4 * num_timers(t)); sysbus_init_mmio(SYS_BUS_DEVICE(dev), &t->mmio); } @@ -247,6 +263,7 @@ static void xilinx_timer_init(Object *obj) } static const Property xilinx_timer_properties[] = { + DEFINE_PROP_ENDIAN_NODEFAULT("endianness", XpsTimerState, model_endianness), DEFINE_PROP_UINT32("clock-frequency", XpsTimerState, freq_hz, 62 * 1000000), DEFINE_PROP_UINT8("one-timer-only", XpsTimerState, one_timer_only, 0), }; From patchwork Wed Feb 12 11:24:07 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864439 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp68038wrt; Wed, 12 Feb 2025 03:28:29 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUuq1MweyuhfGkMFQLFIDEYHWbotzuXivu4owxeKJNNsZJM6yY9My9IZvgq2Lo5/Ak68sk6vA==@linaro.org X-Google-Smtp-Source: AGHT+IGpG+fuSr9dqilgmWh51DWC6CgSOsjsj30KO3IPHaTiSEX2utRrs4R7DEI7A57SWx4lJOZ7 X-Received: by 2002:ad4:5de8:0:b0:6e4:449c:ab29 with SMTP id 6a1803df08f44-6e46ed8a48amr47273596d6.25.1739359709522; Wed, 12 Feb 2025 03:28:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359709; cv=none; d=google.com; s=arc-20240605; b=D4FFi3I9npDXDFrX6pEFtUx75qVdj835HAumuK3ZeZJYKUfza4e+jwAYuwZTQIylVA u/AKsCstgazY0bVVg/+exCpHCmlTsXn4dG8AfXMw5eTnLjc/fYTvMT6QfQ/U4VQtDngH 3LJ9NDsb54wnAyy+UehfBEGtsArGcmkhPXkRkuDoUHwLa2DK/FrujfaVg6M6YANUKcoZ CzKCXKqn28+hUgVcqSHMPgPR/BSnL7xkIlNBHEYfHsJIdg7WUJRp8c8yxOEHRCY8GBvq Bq/7kKgWhaSwp7Ge/XFowWXkoGVkb72NuR/XiEbzVC4zl6yj9giWvPfarXYlV4BoOXzG 3OVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=qque2XZ1dU81iGdYR24fO3GVnw9hhnz4b3BIk7lxH2E=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=fMv0IpG4jooR4GgtBpEg3QvhPI7N+nhfUTUa0ZOcSIiAziyg98nic8oNe6a0c188jK l4asmNCuENw65p00v7mdvT3FmDrQqyD0suLOQWQRgMPOMU5LtjJXIQUaszh4+jlcyl8+ WoUc7G04Nfi4fSZEynMCzZpS3TB8xV61g0sXEeMZlKTrCm0UTeq26vbJwcxgBb+lHGPN attXY/ME7cwsgt5jrS2SLyKDvpYBCCrib6UnxA/G4pUnev8NXYEVJnUsUbtAih0ZIOmT 8YMmjAFEIGCiAjpdEtLAlvIHtYzh6CJVI2V/tgJUOuDhmXaE6ncSPfCJ4mCOrdWZweOd 8EOQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=yQ2EoxxR; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id 6a1803df08f44-6e44072f67fsi127321106d6.85.2025.02.12.03.28.29 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:28:29 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=yQ2EoxxR; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiArG-00069d-FV; Wed, 12 Feb 2025 06:24:46 -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 1tiArE-00068o-ED for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:44 -0500 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tiArB-0004YX-M6 for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:44 -0500 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-438a3216fc2so65908095e9.1 for ; Wed, 12 Feb 2025 03:24:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359480; x=1739964280; 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=qque2XZ1dU81iGdYR24fO3GVnw9hhnz4b3BIk7lxH2E=; b=yQ2EoxxRFl1NA60u4SQfy/rFNhk0EmKdr8fU9RceuC6mUBJD5eAKLG2KaIF5RHpotI /7NmB9FqIQa2TierTWrp4bJ4giBOz7Y+DZGxYJtZzzSoj/XxezFS1561czHlFKluiqtY mBPoEUNfh3I8nPdtKV/nvNXxy+zedYlDfaGsoaJ71ftqHXLA/WcPXlwz+pHNx5Mf7yh2 w7qj11ES5xex49rUPn85YOaf4G4IqOdJ/DJNIyqiYrVb2ImUPBsxvJm5FLvrnVxExx9V 9vPq0yEzbJ/bRZwerfNXYSeXpU9ZFgJJ7yg9jCN3wlhi6t5pzkBYBnYPniMRYnCLsbqT dmvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359480; x=1739964280; 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=qque2XZ1dU81iGdYR24fO3GVnw9hhnz4b3BIk7lxH2E=; b=UApQVN+gUJVXL/KTlDaOAgRc0Ab73MfPT4ey1Pd8m/1e1MOeEAEnP73bToQOxQBVyx 8Rzz6Zx9unls8ws0JbrxZJS0VcxFUkvinGAEbtxlugrxTDvJDRuLmwMiTWBvFGx4ppxk e+SPkSIsdflyAqSuaUsQhr8wHKEN5GzGio1+2YzMI8Gmffz6It5Vgi/9z97GV20VwTa4 pC9jjvOBYQ0U7nNHuIrVPI3OeLrg+jEp82jHMHaiohW1gSlCTTQ3ytp0Ro3xN5DQ8MNZ ZuFkpxJblSW2uhs8ALbMRjQCIp1MFIiKie5CWoImdytu1DxxnKZfEzY4PXZWvb1F+JSD Q0xw== X-Gm-Message-State: AOJu0Yx1MVs1/X1VsqJ0IH9DNOOSRim9RPBZZ23Dce6B8UplHwcevS15 i2s+Kc35r4NQ3wisV7X+TMecczo+eIus1yaEZwi9HO+HiBD4YBsGCxnt2lGMBnP64Fvwn2MTQrK gR1A= X-Gm-Gg: ASbGncs68h87cUetVnZdGgY/pYSNV1xuA/KaLDDOCD+aPKHRSirZtlWKO5WPmhiZCXU dtKCLk5sAjDAcWyi1sKe4ZsfdRlbda11QCFTxGEsOgC626X+yYPs/tywC+jb8onYGpUYYpePCak hZeIpeeVf2ta/QuSLeyFGwl1JgjZ/kYqDMP4eTHIRiyuhfJpZmJDCMNZ/xo1vsDFeQRst6kNKjD 4D5LxzxIEqUI+P8eJVtl9DGBkl15kXxgo92nN5nj3RWD6who58+lnp/cJ6W8eD0DlPkStbdegcU BFb0/ntDDIVLgjkI90tTGcNqUZcvhdpwhX4qlO2zdTciiIpExUFlhJnCyZNCuq0rYw== X-Received: by 2002:a05:600c:3ba8:b0:439:4832:325f with SMTP id 5b1f17b1804b1-43958160560mr23189195e9.1.1739359479876; Wed, 12 Feb 2025 03:24:39 -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-38dbdd1af07sm17390101f8f.15.2025.02.12.03.24.38 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:24:39 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 05/11] hw/char/xilinx_uartlite: Make device endianness configurable Date: Wed, 12 Feb 2025 12:24:07 +0100 Message-ID: <20250212112413.37553-6-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=philmd@linaro.org; helo=mail-wm1-x334.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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Replace the DEVICE_NATIVE_ENDIAN MemoryRegionOps by a pair of DEVICE_LITTLE_ENDIAN / DEVICE_BIG_ENDIAN. Add the "little-endian" property to select the device endianness, defaulting to little endian. Set the proper endianness on the single machine using the device. Signed-off-by: Philippe Mathieu-Daudé --- hw/char/xilinx_uartlite.c | 34 ++++++++++++++++-------- hw/microblaze/petalogix_s3adsp1800_mmu.c | 1 + hw/riscv/microblaze-v-generic.c | 1 + 3 files changed, 25 insertions(+), 11 deletions(-) diff --git a/hw/char/xilinx_uartlite.c b/hw/char/xilinx_uartlite.c index 56955e0d74a..907fb33c6c0 100644 --- a/hw/char/xilinx_uartlite.c +++ b/hw/char/xilinx_uartlite.c @@ -24,6 +24,7 @@ #include "qemu/osdep.h" #include "qemu/log.h" +#include "qapi/error.h" #include "hw/char/xilinx_uartlite.h" #include "hw/irq.h" #include "hw/qdev-properties.h" @@ -57,6 +58,7 @@ struct XilinxUARTLite { SysBusDevice parent_obj; + EndianMode model_endianness; MemoryRegion mmio; CharBackend chr; qemu_irq irq; @@ -166,17 +168,21 @@ uart_write(void *opaque, hwaddr addr, uart_update_irq(s); } -static const MemoryRegionOps uart_ops = { - .read = uart_read, - .write = uart_write, - .endianness = DEVICE_NATIVE_ENDIAN, - .valid = { - .min_access_size = 1, - .max_access_size = 4 - } +static const MemoryRegionOps uart_ops[2] = { + [0 ... 1] = { + .read = uart_read, + .write = uart_write, + .valid = { + .min_access_size = 1, + .max_access_size = 4, + }, + }, + [ENDIAN_MODE_BIG].endianness = DEVICE_BIG_ENDIAN, + [ENDIAN_MODE_LITTLE].endianness = DEVICE_LITTLE_ENDIAN, }; static const Property xilinx_uartlite_properties[] = { + DEFINE_PROP_ENDIAN_NODEFAULT("endianness", XilinxUARTLite, model_endianness), DEFINE_PROP_CHR("chardev", XilinxUARTLite, chr), }; @@ -214,6 +220,15 @@ static void xilinx_uartlite_realize(DeviceState *dev, Error **errp) { XilinxUARTLite *s = XILINX_UARTLITE(dev); + if (s->model_endianness == ENDIAN_MODE_UNSPECIFIED) { + error_setg(errp, TYPE_XILINX_UARTLITE " property 'endianness'" + " must be set to 'big' or 'little'"); + return; + } + + memory_region_init_io(&s->mmio, OBJECT(dev), + &uart_ops[s->model_endianness], + s, "xlnx.xps-uartlite", R_MAX * 4); qemu_chr_fe_set_handlers(&s->chr, uart_can_rx, uart_rx, uart_event, NULL, s, NULL, true); } @@ -223,9 +238,6 @@ static void xilinx_uartlite_init(Object *obj) XilinxUARTLite *s = XILINX_UARTLITE(obj); sysbus_init_irq(SYS_BUS_DEVICE(obj), &s->irq); - - memory_region_init_io(&s->mmio, obj, &uart_ops, s, - "xlnx.xps-uartlite", R_MAX * 4); sysbus_init_mmio(SYS_BUS_DEVICE(obj), &s->mmio); } diff --git a/hw/microblaze/petalogix_s3adsp1800_mmu.c b/hw/microblaze/petalogix_s3adsp1800_mmu.c index caaea222a8c..bdba2006b72 100644 --- a/hw/microblaze/petalogix_s3adsp1800_mmu.c +++ b/hw/microblaze/petalogix_s3adsp1800_mmu.c @@ -109,6 +109,7 @@ petalogix_s3adsp1800_init(MachineState *machine) } dev = qdev_new(TYPE_XILINX_UARTLITE); + qdev_prop_set_enum(dev, "endianness", endianness); qdev_prop_set_chr(dev, "chardev", serial_hd(0)); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, UARTLITE_BASEADDR); diff --git a/hw/riscv/microblaze-v-generic.c b/hw/riscv/microblaze-v-generic.c index 3c79f5733b2..d8e67906d26 100644 --- a/hw/riscv/microblaze-v-generic.c +++ b/hw/riscv/microblaze-v-generic.c @@ -92,6 +92,7 @@ static void mb_v_generic_init(MachineState *machine) /* Uartlite */ dev = qdev_new(TYPE_XILINX_UARTLITE); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_LITTLE); qdev_prop_set_chr(dev, "chardev", serial_hd(0)); sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, UARTLITE_BASEADDR); From patchwork Wed Feb 12 11:24:08 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864442 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp68180wrt; Wed, 12 Feb 2025 03:28:58 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCU+dReKSLfs4tUK83mCF+PnocHkdX5O5BPGwfcWlDAisnaiABiE/l7TUGZzt0+eti5DcEMfsQ==@linaro.org X-Google-Smtp-Source: AGHT+IG/4u1OFUAxDO0KOBSrhkCOQ8Uig9Fu9PMQ6NXuCfS5DoqU4B4mfP8fbWDcNOLDV5Oa2H7R X-Received: by 2002:a05:620a:4045:b0:7b1:5672:5d46 with SMTP id af79cd13be357-7c06fc67f95mr382290885a.15.1739359738393; Wed, 12 Feb 2025 03:28:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359738; cv=none; d=google.com; s=arc-20240605; b=Ed+7l39jSjUR80fVcnZOYGjgG9Nx3T57eSgeo9FLcCtCtPDwP1xcJsGWEGOuuvbhau GrwdYs1IUhzLCjx+xWQfVN8+W4JHWp40Efs6LyW2usUCy2713KTleva8+QQvVw3dx4hM GX1Qi+Hm6ObKycrn4hKN/yYg7mw1PAkuQW+NDqFyW59lmIePRJf0iPQHlXEO9IwZ3H6r vcKjZ8qu4hHy372DqhFVBjQyR+75gkTZAsFm6yusRXCYlhCxtIgyDvwoP4nXylTQmHtV VZan4UlejVfUAoCoPbbhGXe4t6yOZTV0BF4d/Qp0Z25ywQUMSHj6AcWy8pnzyf7K4IY3 rTLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=Cb6beBAMJuXhOI+0o0YuqXYdtcAOxLgJDcrytdbtXYs=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=WpCJE+R5yALR3GHUZ0jkhATlVueVTqBSnsghg3nPBrQxQyi62q+Wib/MZqUKcdELBF RxjLsUi16bWYi2yoADHkOqsug84j0jXKYLvJJt4WqEkoEU5S6dWrPM9TivZkxRxnaUKt ud9oXVpS3U3tfFDCvLSoYWH6Jr+lPhlB5Uwd5Mp9bQIt89cRCpaaJshbviEtOzLV3xk6 YWlesb+5uEbzk026f1vre5a0jC+cbMaubNHB2TkRH4gE/XVnWrXv/FaQlOsb7jaDsvND 8Pj3EQgGHeR2nEkcQbLUD/B+aelliShgLHmREqfe2PUPaFprHAfqA8lWifG13lrJ/r2e Q3aQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=TklTZK8v; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id af79cd13be357-7c06e4092e7si229082785a.212.2025.02.12.03.28.58 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:28:58 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=TklTZK8v; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiArK-0006BR-2g; Wed, 12 Feb 2025 06:24: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 1tiArJ-0006Ah-8j for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:49 -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 1tiArG-0004aF-LU for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:49 -0500 Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-4395578be70so15809495e9.2 for ; Wed, 12 Feb 2025 03:24:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359485; x=1739964285; 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=Cb6beBAMJuXhOI+0o0YuqXYdtcAOxLgJDcrytdbtXYs=; b=TklTZK8vhUmWnLdos3ZkzKC4VO4FAfykxNk3gIxlvplkPLZTn4GyKmwkZ2Ma++/SST doBEznRUOF+ENGWWk88Q8uYiEWmaciSFh0x6oHAWaZSymcDiD7tIXR66XP39x00hkafJ eu7m01NsE/DrJetwQHIXBO+K31Jbev61hrebt+A/uoANSsfhxGHKUcUcyjjKQMZitjtS QoaOuTScfpoIQ+1dJ/yQNpNt18BjwxjwV3ODu1MnDwCS3Cqb9AdRMOz2yOWe13LqW1kp o6pFbhkGV4PrjOG9CZtmgQ51cq+QdK0jxoTwkwNoBEfHjg8YD8B8HI7HKtDHHqVIkhvI 5QRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359485; x=1739964285; 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=Cb6beBAMJuXhOI+0o0YuqXYdtcAOxLgJDcrytdbtXYs=; b=Nbh1cuKdAprHoDEImJYleD8ls47xkTlsUvcefmzWMZyA1AK7AtqtKWQ4PQWL8Ux5Cv hUcMaqr7e/zq/IfHxR4s/ydn3f8CcmzNkJGY2pCvVHBQvDqzpiGeXJDZxYZt+DZ9WbB7 6H6ENV2TCCJ1TE1qpPhs1PMJzoiR4hZXRRXacvf9sNT+Wtw7iyMUikbkZJQDO3/VOk5K fP+layQaZ2dyz6k8yMgdG8CrbmtMXTGkzuYXsnhg15RUQfhFqaWbqZ1yZz6sOoFmO11R 5XSLRgPQIH7SUnLGKs14YhD0NlRDP5ElA38tyc7a27Ak/ebcq6ManLnaSoq+b4BomO+o Pu1g== X-Gm-Message-State: AOJu0YwuV07zwS4bANsBsfFckS140KtuQepqvKlS4rREMyJ2S0Yy+gSF 3r2pT187vehShiMx8df3h4CugQiMPSNyAi97ULmBYLknhDEZ2OtxwiQeZlBWAvwAR0Yue3xFzgx DaCI= X-Gm-Gg: ASbGncslHTAZt5se07WFqg68QrkOtWJUAQSuRNjonMoAltbzGx4zdV2DvVrjPMieuJ1 ya6THYpQKPP4nG9gA+DZNfVlwqH9fHxMKwbVSIcrfRDI7Ff+p/91F/BOXN8wAC3V9hMjhnJtice Y+L/XTL0cGxJW5NjfpkcCzax8e1R2VtPYZc/qqwyYRfCl73DvZdKf89nyZU2zaphmZ9bCe/IDDA SqfLw6ifgvV+A3PUFXHksRZJuq5wADl8NYkiO6PhFUDaYOHxPyzoRO89WsiOxdmcmYvQ/3369St wFY1pV30IoVJCTtQ+Cg/6kwFyTY0EjmcBoY9MEqDFRtZZYZLidJ282wQynbEt+g6ig== X-Received: by 2002:a05:600c:3544:b0:439:57bb:2aa with SMTP id 5b1f17b1804b1-43958166727mr34680465e9.11.1739359484669; Wed, 12 Feb 2025 03:24:44 -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-38e54f521f3sm1200655f8f.83.2025.02.12.03.24.43 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:24:44 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 06/11] hw/ssi/xilinx_spi: Make device endianness configurable Date: Wed, 12 Feb 2025 12:24:08 +0100 Message-ID: <20250212112413.37553-7-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 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=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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Replace the DEVICE_NATIVE_ENDIAN MemoryRegionOps by a pair of DEVICE_LITTLE_ENDIAN / DEVICE_BIG_ENDIAN. Add the "little-endian" property to select the device endianness, defaulting to little endian. Set the proper endianness on the single machine using the device. Signed-off-by: Philippe Mathieu-Daudé --- hw/microblaze/petalogix_ml605_mmu.c | 1 + hw/ssi/xilinx_spi.c | 32 +++++++++++++++++++++-------- 2 files changed, 24 insertions(+), 9 deletions(-) diff --git a/hw/microblaze/petalogix_ml605_mmu.c b/hw/microblaze/petalogix_ml605_mmu.c index 490640e9428..b34edf13796 100644 --- a/hw/microblaze/petalogix_ml605_mmu.c +++ b/hw/microblaze/petalogix_ml605_mmu.c @@ -175,6 +175,7 @@ petalogix_ml605_init(MachineState *machine) SSIBus *spi; dev = qdev_new("xlnx.xps-spi"); + qdev_prop_set_enum(dev, "endianness", ENDIAN_MODE_LITTLE); qdev_prop_set_uint8(dev, "num-ss-bits", NUM_SPI_FLASHES); busdev = SYS_BUS_DEVICE(dev); sysbus_realize_and_unref(busdev, &error_fatal); diff --git a/hw/ssi/xilinx_spi.c b/hw/ssi/xilinx_spi.c index fd1ff12eb1d..0cedfb526a0 100644 --- a/hw/ssi/xilinx_spi.c +++ b/hw/ssi/xilinx_spi.c @@ -25,6 +25,7 @@ */ #include "qemu/osdep.h" +#include "qapi/error.h" #include "hw/sysbus.h" #include "migration/vmstate.h" #include "qemu/module.h" @@ -32,6 +33,7 @@ #include "hw/irq.h" #include "hw/qdev-properties.h" +#include "hw/qdev-properties-system.h" #include "hw/ssi/ssi.h" #include "qom/object.h" @@ -83,6 +85,7 @@ OBJECT_DECLARE_SIMPLE_TYPE(XilinxSPI, XILINX_SPI) struct XilinxSPI { SysBusDevice parent_obj; + EndianMode model_endianness; MemoryRegion mmio; qemu_irq irq; @@ -313,14 +316,17 @@ done: xlx_spi_update_irq(s); } -static const MemoryRegionOps spi_ops = { - .read = spi_read, - .write = spi_write, - .endianness = DEVICE_NATIVE_ENDIAN, - .valid = { - .min_access_size = 4, - .max_access_size = 4 - } +static const MemoryRegionOps spi_ops[2] = { + [0 ... 1] = { + .read = spi_read, + .write = spi_write, + .valid = { + .min_access_size = 4, + .max_access_size = 4, + }, + }, + [ENDIAN_MODE_BIG].endianness = DEVICE_BIG_ENDIAN, + [ENDIAN_MODE_LITTLE].endianness = DEVICE_LITTLE_ENDIAN, }; static void xilinx_spi_realize(DeviceState *dev, Error **errp) @@ -329,6 +335,12 @@ static void xilinx_spi_realize(DeviceState *dev, Error **errp) XilinxSPI *s = XILINX_SPI(dev); int i; + if (s->model_endianness == ENDIAN_MODE_UNSPECIFIED) { + error_setg(errp, TYPE_XILINX_SPI " property 'endianness'" + " must be set to 'big' or 'little'"); + return; + } + DB_PRINT("\n"); s->spi = ssi_create_bus(dev, "spi"); @@ -339,7 +351,8 @@ static void xilinx_spi_realize(DeviceState *dev, Error **errp) sysbus_init_irq(sbd, &s->cs_lines[i]); } - memory_region_init_io(&s->mmio, OBJECT(s), &spi_ops, s, + memory_region_init_io(&s->mmio, OBJECT(s), + &spi_ops[s->model_endianness], s, "xilinx-spi", R_MAX * 4); sysbus_init_mmio(sbd, &s->mmio); @@ -362,6 +375,7 @@ static const VMStateDescription vmstate_xilinx_spi = { }; static const Property xilinx_spi_properties[] = { + DEFINE_PROP_ENDIAN_NODEFAULT("endianness", XilinxSPI, model_endianness), DEFINE_PROP_UINT8("num-ss-bits", XilinxSPI, num_cs, 1), }; From patchwork Wed Feb 12 11:24:09 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864441 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp68147wrt; Wed, 12 Feb 2025 03:28:53 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUWWy9mIJUKA+rZsFaGbIZW3g4LgftkrSnn7fl2DhwSC5MelJedFHjUWDe9BQDBSVfbzTjGWw==@linaro.org X-Google-Smtp-Source: AGHT+IEocpP4UVWYjNzKSgMYwVcqDg/BHrdnqyqKz5qBrGp8BaTRgx3736g7VQDLxrzFNc1UyRR7 X-Received: by 2002:a05:622a:155:b0:467:7725:8b69 with SMTP id d75a77b69052e-471afee1129mr36233101cf.40.1739359733398; Wed, 12 Feb 2025 03:28:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359733; cv=none; d=google.com; s=arc-20240605; b=UE9xzHDfmroATZ14jY14laFznaEm8BE7VUq1gSUFo3g1b946Y9VMpyo2GnnpTaC0sU zC9K3NLI5Jr22cKYOTTFZ2Fd5US1e1bXLPjSu6MbzyDiI/UQPbPqwqwEtfz+pbtehK0D nYpLRqr+hACWois07tQapOwCqIb2hhwlpPjL1ZZry313Z1cOW1YrNApVDrHjEgAmFDN8 QG8jia+ogViVc/dhJpBtK1cUe8EWF7kl+RhmafefKtJSilZ3u/r+qwNLeZSnId4wAN2n pYpUgl+OBmu4+zxrERf//ceDCd0k/nwxTvFTGKVCwbKjY9VJl/+TNZnyLfueNeJ0ukUQ Wiyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=HDiUYtW4nbeConrg8Jrfqgn2X4rVVAY8PB/0AQkGf9s=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=GJHs/t0kxLcgg2nFWaXt7FLRdz5dD5tZcO0chw4Fiz2Cz4OrQA9+9a+Z1IaISoK9k2 yJzxxt6BqPiXBT7UipCX0fgDEldoQed/kePH1/vq21Jz/kdDBWh60KdEZIDQInBT40dC kAFSFdRbwl7cP7/sk8thG0lS71y+/tfQDSrqZ+LWSJAO7T8VJLk69k4qjWGNFtYEDNzb uuKJr6sHgVJE9MzaH1YhGQuVr6AJi42VX3exQ+R/NWaBCLoNoQcNLPQzv+Mmtt1z1obq +SWnL3lrbo1TDmSmP0ZZBJgowEmvGxq3xDbkU0v5j29rtwljLVjeudaQop12vB8jo5Ez 6dQA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=i9VmA+Co; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-4718a0bd1e9si77171101cf.47.2025.02.12.03.28.53 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:28:53 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=i9VmA+Co; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiArU-0006Jg-14; Wed, 12 Feb 2025 06:25: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 1tiArO-0006F4-1U for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:54 -0500 Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tiArM-0004bd-7p for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:53 -0500 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-38dd935a267so2993640f8f.1 for ; Wed, 12 Feb 2025 03:24:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359489; x=1739964289; 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=HDiUYtW4nbeConrg8Jrfqgn2X4rVVAY8PB/0AQkGf9s=; b=i9VmA+CofWfKWjkM/4+NQyGkXKDLc2OJkF5bxGNPcAJdokYFSqKE+A4VSfzmEILW6L AAcP4T/ZGjlNTi0Z8VLkyS4F7/hSgkmQPEAh7tikMaxQDwUnn/iUK75vQlX8uGk4w3DF /6BFDNFspzKtk3ncSaCXahkPWouJWAWZIkATMsTgAOC9FnMzKLP5sXly6tS7zcTxZjlh DSnd2PWC4K1TUzTqOGaW9BqQTPBGMn+gXPTjxUA2hRrT45kcREfRwV7sPB95zCDDi5qV n12mq5dKE/CLEwzYKoxDZoQCgYuGfAQCprs7hF3y6w68fyCPNJv3OvHZemVdhk+IOoAY JUfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359489; x=1739964289; 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=HDiUYtW4nbeConrg8Jrfqgn2X4rVVAY8PB/0AQkGf9s=; b=Yyr/0+T73bx0GkYiLFMbX23a5eYqdMOdpPGfl5KC1fiqBmfB0mIuqVtuF6H/MQsoF/ AaDJF8WycPY7IPybrALBR9bSyDJP7hPPnQ0awVIuElSjPa50EkQtSej+GIfSY2YJelod 8+WHXVCAQX0K2EdaEqmUGAYkjQezM4m+5ktIc3LqkrXff7shswqx15ULPjtl6EUzYJFa 2j8gxCQhGPXU9DwOoTo0+B06LLDKw5FVXEAwn0rw+RebuP9yX4m5QCSbokNOXdSMaYBC quBe+whnnJQaVuBAWSp5FCqZR8xao6JdrTTTsugdw23X9VUTsOmdNTWvQBgQznAb6xaE HC2A== X-Gm-Message-State: AOJu0YzUTCpCPMPa5uU7vNRHCMSrrd2dzld7lDAlmjGum3BXoQe88SHV AyjA0dlkhMF6WlH9ITBxozteHwKPt2kMh5Uu3BNutZQYUHKMAoco07AuTWVm3NGPSOl1K5h+8gk ha4w= X-Gm-Gg: ASbGnctjPGQL77c6qxBPOWnXMTifDIWC4r3GTcbf1FK4KVu9Vlk9+hUTB34Umg69+zT dmJ4Twvn/slt5IFDhvSk3fyxpXR+zMKihyCKUDCJlTcYRsjtnO1KJvRxLN22RjgJIF589L63k+b +dEW0F3ujjUWA39jn4PKtVHfnZy/Vl3oBwNdTyxnlRpuAAFfEZXx8F42zmo4u/vBD2DfCcZGnYJ JuwjwPrmqpmqJ/4GyK+cEEv3Nm/O+a+LKfgcafLyI4qmwfXXTcIIcVk0VIl7SZIZwg49Wo5aKNV e1ZCaV6O4Xej8c2bxtyT5Q/OKPn5P2b4QObYzsG+fntfGhxUS6bS33t+YhIip6Icbg== X-Received: by 2002:a5d:5f50:0:b0:38c:5bb2:b932 with SMTP id ffacd0b85a97d-38dea25918amr2224245f8f.3.1739359489363; Wed, 12 Feb 2025 03:24: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 ffacd0b85a97d-38dbf6e4a4bsm17005739f8f.92.2025.02.12.03.24.48 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:24:48 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 07/11] tests/functional: Avoid using www.qemu-advent-calendar.org URL Date: Wed, 12 Feb 2025 12:24:09 +0100 Message-ID: <20250212112413.37553-8-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::429; envelope-from=philmd@linaro.org; helo=mail-wr1-x429.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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Avoid fetching assets from www.qemu-advent-calendar.org website, prefer fetching microblaze assets from GitLab servers. Suggested-by: Thomas Huth Signed-off-by: Philippe Mathieu-Daudé --- tests/functional/test_microblazeel_s3adsp1800.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/functional/test_microblazeel_s3adsp1800.py b/tests/functional/test_microblazeel_s3adsp1800.py index c382afe6bfa..5bf94d88dd8 100755 --- a/tests/functional/test_microblazeel_s3adsp1800.py +++ b/tests/functional/test_microblazeel_s3adsp1800.py @@ -18,7 +18,8 @@ class MicroblazeelMachine(QemuSystemTest): timeout = 90 ASSET_IMAGE = Asset( - ('http://www.qemu-advent-calendar.org/2023/download/day13.tar.gz'), + ('https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/' + 'day05.tar.xz'), 'b9b3d43c5dd79db88ada495cc6e0d1f591153fe41355e925d791fbf44de50c22') def test_microblazeel_s3adsp1800(self): From patchwork Wed Feb 12 11:24:10 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864440 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp68113wrt; Wed, 12 Feb 2025 03:28:44 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCWmg1LxCAP09G8GnBgIZZYce6vbxdVSGnxb2VJXwl0GHAujOPFJETM/7Y1If0m8Ayyb8dhZrA==@linaro.org X-Google-Smtp-Source: AGHT+IHJjCZlOlRp5DAfMJjnrwc8C9OCsX+PtTt9aRbvJ5g+ybAHekIeAJ2JonjwZwWaZE5G+dj5 X-Received: by 2002:a05:620a:1919:b0:7c0:589b:2f37 with SMTP id af79cd13be357-7c06fc7ffc6mr436119385a.31.1739359724683; Wed, 12 Feb 2025 03:28:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359724; cv=none; d=google.com; s=arc-20240605; b=ggsxk3G/vSFqdYYSaJThHUa+wHXWLpL4EQ03FTuR9XL4s/TNiph9sfFj7KrfBLpcwy URp3F3KJ8yfQ0m+mk2+swMMc1BHCw1yF5MiN5UOXsL1YrUEMLRojZZT6xdxUj/uFqFVz SLCi8VsRqUYqNbJGjD0ZfYnR7V0ZZpFU3WnUq3wPIpa4QrA4bF+0GQmsr4A9p6iws/QC dpzj/XRbd5z7s01OcXc2+hnSwlZuhQsSyA2j9qafHJS7IfY20WP0hdkFcZ+t5oADimAC skxIJtCxzY2uHPn+OfDXo5FTbIDaGEx+feTvcbJ3zkF0P36+Ebha1VlLFSiAJhrgtiEK of4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=F/5SvI1nZOETAaAlXL8oDs7D5HNrYsWDKjSPJuAoVFY=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=YHZ/8/1hN3P1TH6CfIeM89UFweH/HcdG+Kwvosn5OjeWXfu4WcHyc0lYrEjSQr49Wo H53zYH3heEiQjHxNU/ZT9qml1+uYp1d6SENr0Ahbv9bCSYw3fHXAROzNT8nzqIrz6wap duhnB6lGEOC/b1Ub/Gdo31a7ZSWq8BmOFaUfneiPXHOEDajUoE+qUgCxcTHvq99gPxj0 IyllbQxI2YAzLry7REBVT4OspyqAX7wBpHAHcSBVtiAHj/cFxBAnkNJZXjH810NF5aVk S/w4nZ/iq16pAxwYtW4ILZThMWcQIZEoVp2BLBi51tABFpJIDdpcs3Hj7GU/dZyRTE1l ktag==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=JpWyRONX; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id af79cd13be357-7c0588905aasi748946085a.395.2025.02.12.03.28.44 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:28:44 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=JpWyRONX; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiArZ-0006Mp-83; Wed, 12 Feb 2025 06:25:05 -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 1tiArT-0006Jo-N9 for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:59 -0500 Received: from mail-wr1-x434.google.com ([2a00:1450:4864:20::434]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tiArR-0004cu-Ko for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:24:59 -0500 Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-38dd93a4e8eso3160373f8f.1 for ; Wed, 12 Feb 2025 03:24:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359494; x=1739964294; 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/5SvI1nZOETAaAlXL8oDs7D5HNrYsWDKjSPJuAoVFY=; b=JpWyRONXR10L1q5TXKiHCGj/zhqn4YTScOazJYL5vZFa1eAUWnTkamZEvtf+T7cEvl uZXvagF2F3ZKjNxrBMV206fZM2KD2ug7520QBr6+WTmqXpQdMxjFFuVNOdlSXX7SDZZ3 FnMkJpO4TsbfkKMff5DnfGNjZQPCi0W6epgPBflXTaKs1ggLSeVxIkERofi6ObEI6a9K Y3JraFm1ZYKDN+HwW7C9flqj3hmFVjXWeDkiIrLw91Ioc7ng0e0qCIOyJPDEIOS/K8Az BDavkbQmCv0rMRTENjyLMJ+tqvgP5X+eI26Ams3UZEAygzh42UtsaLQFva/QkWT40otJ /bGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359494; x=1739964294; 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/5SvI1nZOETAaAlXL8oDs7D5HNrYsWDKjSPJuAoVFY=; b=B7AJ9Ft4lBlTQcTKetwtdYibqvgF4kCZy4OXz0YY+PytIMrZmBC2v4JHVlXmbLdXFc XseO6z4cw8jEV459No6LJELTXAOtimSRBuGJNIYd0jbKN+Z4p3NSTKCpM+QBJ+JzmGjz ykyXG5N9GtI6U6v/lH1/JKT4JVUr3TlLBoyI1v3f+Yw2nN7ae3pzzKclKsqSQdevNhFG Ie8arhWjo81oRxsxeYteWQvPAtuRNsWPkvyEqd6t5N8k7YK+qtXjSrYGgC3lFkoIvvog jryHlO3m5CFFgClvZKjSedzRU0+WtMxfUh6RjX1xf28xhC5zJbfrVOqJ2bHzwRiowTTA B1gQ== X-Gm-Message-State: AOJu0Yx6G2CD7YzsycQZh5I1Vva+zrxiNsV57sBu7hoHs4glcZKaaMxp gAhqqx7ivQHdWXTUsRcS5r83pacZbBJYkGlW/9iyUSeqLOqEFNksNFDphEx4LAXC48SXJRlwLrz heKQ= X-Gm-Gg: ASbGnctHKq64QDj0D+cTSXWvFDrrt2td0RCMlUJGjREwkh6C/VxWyRApe1QgjPWYnfe nWAXqngC89ivEza6Kf2s5JRiocMkICNne818vXysvAxR2sw7BENLnk48pKL8WhATmLWktPXMBfv aqnrfrETtaeQ3rGmsFUKhTzkUe/Zat9uGDerP5phduuRz+c0ZeLvAcrDo/EFxUzSLNONgdhk31o L1WgIlZbFyfewmEP1qLbkJwePShayIG+6hrx4N93aYPf0xakE8bpCKE2GRxPI5QB0lBGf7CoKI7 Xrj50chJhY2XVFM2QOYqJQ14aShLzAHA0qAbebW3aQYdpVWQ2PoDYOCUt4NRh8Sscw== X-Received: by 2002:a5d:4c88:0:b0:38d:d93b:5899 with SMTP id ffacd0b85a97d-38dea266daamr1950525f8f.21.1739359494210; Wed, 12 Feb 2025 03:24: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-38dc9ef8ac6sm14517102f8f.27.2025.02.12.03.24.53 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:24:53 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 08/11] tests/functional: Explicit endianness of microblaze assets Date: Wed, 12 Feb 2025 12:24:10 +0100 Message-ID: <20250212112413.37553-9-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::434; envelope-from=philmd@linaro.org; helo=mail-wr1-x434.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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org The archive used in test_microblaze_s3adsp1800.py (testing a big-endian target) contains a big-endian kernel. Rename using the _BE suffix. Similarly, the archive in test_microblazeel_s3adsp1800 (testing a little-endian target) contains a little-endian kernel. Rename using _LE suffix. These changes will help when adding cross-endian kernel tests. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Reviewed-by: Thomas Huth Message-Id: <20250206131052.30207-13-philmd@linaro.org> --- tests/functional/test_microblaze_s3adsp1800.py | 6 +++--- tests/functional/test_microblazeel_s3adsp1800.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/functional/test_microblaze_s3adsp1800.py b/tests/functional/test_microblaze_s3adsp1800.py index 2c4464bd05a..fac364b1ea9 100755 --- a/tests/functional/test_microblaze_s3adsp1800.py +++ b/tests/functional/test_microblaze_s3adsp1800.py @@ -15,14 +15,14 @@ class MicroblazeMachine(QemuSystemTest): timeout = 90 - ASSET_IMAGE = Asset( + ASSET_IMAGE_BE = Asset( ('https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/' 'day17.tar.xz'), '3ba7439dfbea7af4876662c97f8e1f0cdad9231fc166e4861d17042489270057') - def test_microblaze_s3adsp1800(self): + def test_microblaze_s3adsp1800_be(self): self.set_machine('petalogix-s3adsp1800') - self.archive_extract(self.ASSET_IMAGE) + self.archive_extract(self.ASSET_IMAGE_BE) self.vm.set_console() self.vm.add_args('-kernel', self.scratch_file('day17', 'ballerina.bin')) diff --git a/tests/functional/test_microblazeel_s3adsp1800.py b/tests/functional/test_microblazeel_s3adsp1800.py index 5bf94d88dd8..ccebf5c2ce1 100755 --- a/tests/functional/test_microblazeel_s3adsp1800.py +++ b/tests/functional/test_microblazeel_s3adsp1800.py @@ -17,15 +17,15 @@ class MicroblazeelMachine(QemuSystemTest): timeout = 90 - ASSET_IMAGE = Asset( + ASSET_IMAGE_LE = Asset( ('https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/' 'day05.tar.xz'), 'b9b3d43c5dd79db88ada495cc6e0d1f591153fe41355e925d791fbf44de50c22') - def test_microblazeel_s3adsp1800(self): + def test_microblazeel_s3adsp1800_le(self): self.require_netdev('user') self.set_machine('petalogix-s3adsp1800') - self.archive_extract(self.ASSET_IMAGE) + self.archive_extract(self.ASSET_IMAGE_LE) self.vm.set_console() self.vm.add_args('-kernel', self.scratch_file('day13', 'xmaton.bin')) tftproot = self.scratch_file('day13') From patchwork Wed Feb 12 11:24:11 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864434 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp67225wrt; Wed, 12 Feb 2025 03:25:39 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCWtdVgccL00bhy1MOPTClRiy0l22ttmzjUMUqlUoR7MJpQJ0EVwA/c9418SJek+M77gP8rNJQ==@linaro.org X-Google-Smtp-Source: AGHT+IHRyPE19lLz1DDse02NFWc+O6jWYv36R+DY+rvVkGEcqZlQZ2mB/fu4zLg3E2Shszq/o972 X-Received: by 2002:a05:620a:390f:b0:7bf:f916:faf3 with SMTP id af79cd13be357-7c06fc4dbdcmr414719585a.8.1739359539477; Wed, 12 Feb 2025 03:25:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359539; cv=none; d=google.com; s=arc-20240605; b=VMHIuhDJqDxP+wjzFt8isN17OBkl/8gqhdYhuXtD6VMuNv1QSXiVn2+70CM3oU/8c6 OAQ1XAWo+Yr7BA+CWfVgrSgYTcL7Ew0g+EhWKCS7H/zrctM+Hm3HzjBJy5VykizIneqy qNC3OmFf4vYKwNjOyIkQ6ICKG4BJgtmBqSFYYR6avPlzJO2nfhpLlyM3sicqJf74Ntel tY3uodPh6Bq3GAqp2lkmawexbSAkWM4IhrE3lMkaVYhnUOlnS1SylLY9dlWfLuMffJ95 WQP5ALzhyYrsjIyTW7psgeHaMiKM6YGRgiQ2Zlkm5+7gYWOqpZ9BslL1ljGQh983zRQZ DktQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=MhuBVUlLscLfkf9l122Veq4MQDhOCQ9wVWqjNr9jN1s=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=Bd2jXgXfuDo4VTcUPZ9CiMwlA1QAqXkKyuEXakkJ/bj9/1Tjc3dFxrXZKkPM9Mrjwa dOma+60oLLkv0aWT5oxcQl6KdxSFrBa6Eg1d/7eQlG+Zi/7BCsVlskf2TENmuhOnkaEv zE+e8Z0w9+ainuWt9QUwxszpJu2gSuBQQOTTTnZfxDuCMDjh5L4UbTJEICl29CNnTBJT 6tNpnOG0fB+dyrHIfH+2GlQehDupYmecB+HPQBTXZTVLa8rshBxY388jpXR6XXBMkzrO kIc6yV9/9rKLsGOwudHWjknkYd1lat/7ey0WIcnlK3h2qIFhuRpOM+4IPzdl6PpISKE8 r1Dw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="U/xBDP2Z"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id af79cd13be357-7c06b5c5262si300396285a.398.2025.02.12.03.25.39 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:25:39 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="U/xBDP2Z"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiArx-0006bB-ED; Wed, 12 Feb 2025 06:25:33 -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 1tiAra-0006OK-7h for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:25:08 -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 1tiArV-0004f9-WB for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:25:05 -0500 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-43946b5920cso21211065e9.1 for ; Wed, 12 Feb 2025 03:25:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359500; x=1739964300; 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=MhuBVUlLscLfkf9l122Veq4MQDhOCQ9wVWqjNr9jN1s=; b=U/xBDP2ZgQKBjMaDafrv01h7WDoOE8SusPpl78M1hRsR/qRKYJsYzt7mUOe5eOXHLH Mb2Be5o+cEZ56JBM3vilwqCEXuTpVsQktViFiBqn+qjfh41CeWdyDpnYMw652ByhnC+p /VmNR8Y1niIrlREjTyf7CNvc9DRdtvnvctfz9tPHW2DJ5qYxfuHpSZTPEczD5ylu9TJw xe5+FfFbaJ21xCSDWKqRws1lujmki6VhW2L7pTCDMVWrrGgNKSd2kfGuFWMFtKeflRMZ yAaTNJYna0bW+0GlyZcNgHn8Bz8vhAbeVewMvJ4I9YMhhsNR8aBv80Nb7QNt9X8QMPMg Gliw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359500; x=1739964300; 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=MhuBVUlLscLfkf9l122Veq4MQDhOCQ9wVWqjNr9jN1s=; b=n68MZF9f8JfoDrwSjNYkawW+y98WP4cwXDGauNqS4eX0ZhwV/2hX+W8za0ahQsJfzE RGKmrRiZomuNE4lk5iK2natTe0gtQWoI+uCD8MhUPd6A1Zt7y3IqX7wOIMr2mHPhcaNo PWsclVZW7EzZWXw6RlTxfuASxLfW/gm3NwjmR9ddc/Z1LqbDwZ6s9ldLlxC5xpx1jJDn aEJvgfPlGQ059iHdkmXkvzT1mdjHV96o7a6vx0WQn2GP4cJiA/fhOs7hF4sK7JVqPl7u J4d3dlR9RinLP50vbGpb8Pofi8MkGrZAc88xMUnfHHgQrI/HXTJ/aNecJ0LwkbEtdOrg LafA== X-Gm-Message-State: AOJu0YwqAP2HuI7d+pIgO+NP0T4S56j9jc6OhRI0sfH170PduQ6qZEmA uXz0h9++DwGrcTSXFZuabPJlnr+MUF3Php658SX0R7ELZ8QZ6LNq1eDOxSP6P+rmQ8bYSM394Bg mOjw= X-Gm-Gg: ASbGnctK5dshcQjxa9MAYOL2JHjPCYJ4bGsfQAAPAMs0kogNVaD/fWka11tqeDIiTLk ei9idVI09p6ZiE6C8MYpYshKgKRZ4EUHQCV4Dq2OgoRhHO072ogSVfqYPkCwwPNIQ19DfByf39t btRtjLC7nhDVFRRItEoL6yz1j25pKfLknczfBsgCr1qNZ4GRZ0KdLYd2J7kTZILdXQg3Lw6dF1E S7fXcl2P/2Iy7WkQLUwqfcOKTUNmG1czQqcwRAI3Eu9Yzh6P73t4irK7HjYm0JvIxEOPIUl+OaD I2XJ+ex+qhJ58pRO2L/8zLTPkVxT5xmj5tmIbZVew1On/EgtmbHDceA8ozxk4utKKg== X-Received: by 2002:a05:600c:35cc:b0:439:4499:54de with SMTP id 5b1f17b1804b1-439581d491fmr28471535e9.31.1739359498948; Wed, 12 Feb 2025 03:24:58 -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-4395a07a8f2sm16646805e9.38.2025.02.12.03.24.58 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:24:58 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 09/11] tests/functional: Allow microblaze tests to take a machine name argument Date: Wed, 12 Feb 2025 12:24:11 +0100 Message-ID: <20250212112413.37553-10-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Make microblaze tests a bit more generic. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Thomas Huth Message-Id: <20250206131052.30207-14-philmd@linaro.org> --- tests/functional/test_microblaze_s3adsp1800.py | 7 +++++-- tests/functional/test_microblazeel_s3adsp1800.py | 7 +++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/tests/functional/test_microblaze_s3adsp1800.py b/tests/functional/test_microblaze_s3adsp1800.py index fac364b1ea9..c4226f49cf3 100755 --- a/tests/functional/test_microblaze_s3adsp1800.py +++ b/tests/functional/test_microblaze_s3adsp1800.py @@ -20,8 +20,8 @@ class MicroblazeMachine(QemuSystemTest): 'day17.tar.xz'), '3ba7439dfbea7af4876662c97f8e1f0cdad9231fc166e4861d17042489270057') - def test_microblaze_s3adsp1800_be(self): - self.set_machine('petalogix-s3adsp1800') + def do_ballerina_be_test(self, machine): + self.set_machine(machine) self.archive_extract(self.ASSET_IMAGE_BE) self.vm.set_console() self.vm.add_args('-kernel', @@ -34,5 +34,8 @@ def test_microblaze_s3adsp1800_be(self): # message, that's why we don't test for a later string here. This # needs some investigation by a microblaze wizard one day... + def test_microblaze_s3adsp1800_legacy_be(self): + self.do_ballerina_be_test('petalogix-s3adsp1800') + if __name__ == '__main__': QemuSystemTest.main() diff --git a/tests/functional/test_microblazeel_s3adsp1800.py b/tests/functional/test_microblazeel_s3adsp1800.py index ccebf5c2ce1..1f0812eec63 100755 --- a/tests/functional/test_microblazeel_s3adsp1800.py +++ b/tests/functional/test_microblazeel_s3adsp1800.py @@ -22,9 +22,9 @@ class MicroblazeelMachine(QemuSystemTest): 'day05.tar.xz'), 'b9b3d43c5dd79db88ada495cc6e0d1f591153fe41355e925d791fbf44de50c22') - def test_microblazeel_s3adsp1800_le(self): + def do_xmaton_le_test(self, machine): self.require_netdev('user') - self.set_machine('petalogix-s3adsp1800') + self.set_machine(machine) self.archive_extract(self.ASSET_IMAGE_LE) self.vm.set_console() self.vm.add_args('-kernel', self.scratch_file('day13', 'xmaton.bin')) @@ -39,5 +39,8 @@ def test_microblazeel_s3adsp1800_le(self): 'tftp -g -r xmaton.png 10.0.2.2 ; md5sum xmaton.png', '821cd3cab8efd16ad6ee5acc3642a8ea') + def test_microblaze_s3adsp1800_legacy_le(self): + self.do_xmaton_le_test('petalogix-s3adsp1800') + if __name__ == '__main__': QemuSystemTest.main() From patchwork Wed Feb 12 11:24:12 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864443 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp68274wrt; Wed, 12 Feb 2025 03:29:15 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCX/FLne+e5lEboC5xd43tchAdEkJyAR8l9wDmGhhuZegUGe5OTZCkUd0juqLULWTmuGZ+WwUA==@linaro.org X-Google-Smtp-Source: AGHT+IEq0B211sduWGHUvEePsaMTHdExZ8OaBIfbodJviSUMEfKLQHOLmscmPa3Euw8CIZWUvL0F X-Received: by 2002:a05:620a:4113:b0:7c0:4765:c94c with SMTP id af79cd13be357-7c06fce3a83mr577073685a.54.1739359755050; Wed, 12 Feb 2025 03:29:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359755; cv=none; d=google.com; s=arc-20240605; b=LhKoK1MeUSdUgXOHtFVjtuRzPaQmsQ8hBxQuRnRPQsa2d7bNePudnb5EuEKrOhH8GR dhJo3/LO3N5OHVGwG5rF7/HiRLj6Uo40fhkf5bPMU6uYIsuGM9AkH3f1H5MxenXbLGIF f38sq5pCuWQmde7qBiIH4GLeO9Fqmp8LiN6bLNh0YI7FDRHOqbL+uDAqHZptTKcPUthb bWXMui/cyiQ0V1ImhQ5Eux9r484mGNHDqyB3LER9UdjRPK98nkfFqVjTxEvpdk0GSqim 6RZnkN8k9rDFgPx7IUdVzfA+QpmhCMjq/qrwbi+85fUrjamPKvUDyvP+uTrXGrbbvRGw AEgQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=zk8npvpvvWsz3fYv0R1o0ULJq8hATZnhrjaHmw2ltQw=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=KGwimy+9b2Smve4sNRKh2zCBVGr7r9ZRtIPQqAB+ZSO9Is4+hsbzNbWMhoKHAKE5ci ngj5y6Z5fQ7+yhJofxOquj0fz8KavC54badEaupaBikVfW+8BqkhAsby5qRAhdPuIfqW +Oo6s3zPuNUOyFha0Vd06Yb+qk7XeqPN11bihxMaIjlWTEeMLZeEJM3bKg5wh7B80wz9 BloAjNVpMopeIdovgjAOCc/HyNri1MMEpzIESNYwck5AhG88qYu8cyaaS/cHy7STGhEB EqTUH81Na6YVKTDYuI+dXNjdroabSbi21VABLnC9TUyEs5eIMuUvzcorJYF5SkjjllzT UAFA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=CNognFm6; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id af79cd13be357-7c04eb080d9si906204585a.529.2025.02.12.03.29.14 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:29:15 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=CNognFm6; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiAsA-0006zI-6x; Wed, 12 Feb 2025 06:25:42 -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 1tiArj-0006bC-7G for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:25:18 -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 1tiArc-0004m9-0L for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:25:11 -0500 Received: by mail-wr1-x435.google.com with SMTP id ffacd0b85a97d-38dc5764fc0so5168386f8f.3 for ; Wed, 12 Feb 2025 03:25:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359504; x=1739964304; 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=zk8npvpvvWsz3fYv0R1o0ULJq8hATZnhrjaHmw2ltQw=; b=CNognFm6sFgAeRIj5QsEIEylGLc40lgtPRNoML62/UHsy7Va/awfHlki0SHl8Jo8xi iMYz6oPhlf5xILDicEnN8jSQK6ZpqxWnusPP3v71VV8sT43Ba/fb5wijThZsZli6H0Ey vG5Jp6Gat+HjyywFuh8W456ovYgZCa3Ml8my8ryBDYN/vqPO4wbspECFPBe+yk1b8zD5 21qGrLCZTnw0zH2UQ0OK93NNAWEDP87H0/V4Gb0TsD+jOKXZs/IRyVM+TRW0DKif+zxi OANMb8eT4t2HlIHgBbKixMM326+VyxN3261ceEhlk0SgO8fhrS4NRT18XrQP+FeplGCB SV1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359504; x=1739964304; 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=zk8npvpvvWsz3fYv0R1o0ULJq8hATZnhrjaHmw2ltQw=; b=ETbthgtVFImQh1UWyWMmtS2ndFKgmhch9HVfO4Pgwl8N/Wi1jmFPGdGgyq/jr4+UnH RYi/Cox2qbFDFdqEhAbk3Yz7zRNIsk0P9cJkerNAHkiNlSRyOD52vikb9JjsZF7sFczw RdTqLcQDTE4VSWzZhDxd30kZNWYnwn7dS5QZFQDQTBvCkGhLxYOlRdf8Q44VdS6+3D/D rnvOoufOiRb9ejtAlYpEQDdzZGaF0bMbo2sid3NnqnPmXRHI3695yHZI2kR81hrqWuoC 5Y1zKPWrVAkgir6TqoMpzbWvh+O91Y6C342OyNCdVgCbvexUAT3e0z2fpHw5pXxKvWs2 wTwA== X-Gm-Message-State: AOJu0YzqqmrA69z6HI8rtiYk0z5oIIuPJcbKTjlbYfG1JxCzX3kOkv8n 4545yhMRlFM2GExqrd4zlJpyl4GigmzqAJwwriIzXrVgO79T1Iu9XYf4XHt2Iul3ZsSZdYn5Ubl U8WE= X-Gm-Gg: ASbGncu/1ptq9nhJt9XC1YhfD4lnAYpIPNq/2Ecky6KqNF/bx98nKGhyCokFJzsi4An 1jy3bOj/pzpLcZ19MTXXCWtRsPdtcag4fyOD2/ph2gjfjWruqAP6QiYAbm/CT0OgqC3HP7VARDW E7rUj1luB25bDbj9ftt4UcJPg4JL+rdYvJmMvV3XUexstbpOqr6I/i3hkiICsEJoU+J5Tu9a1lw FImv3+c8VTspOJ8AxpsEYTe+nPArYTQMq3mgWe8qcQcvP+eT55r2J6jQZr/6KRP3ojb0VUy37oY g8PboUTuIlp/BDhSuKK8opau7j6zEtCUih+UjQIKo1mA6GYu9oZNnOTXtHpwQP2bjA== X-Received: by 2002:a5d:648b:0:b0:38d:c2ef:e291 with SMTP id ffacd0b85a97d-38dea2e93ffmr2618859f8f.39.1739359503780; Wed, 12 Feb 2025 03:25:03 -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-38f2103100csm483962f8f.2.2025.02.12.03.25.02 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:25:03 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 10/11] tests/functional: Remove sleep() kludges from microblaze tests Date: Wed, 12 Feb 2025 12:24:12 +0100 Message-ID: <20250212112413.37553-11-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 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=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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Commit f0ec14c78c4 ("tests/avocado: Fix console data loss") fixed QEMUMachine's problem with console, we don't need to use the sleep() kludges. Suggested-by: Thomas Huth Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Thomas Huth Reviewed-by: Richard Henderson Message-Id: <20250206131052.30207-15-philmd@linaro.org> --- tests/functional/test_microblazeel_s3adsp1800.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/tests/functional/test_microblazeel_s3adsp1800.py b/tests/functional/test_microblazeel_s3adsp1800.py index 1f0812eec63..d50b98342d7 100755 --- a/tests/functional/test_microblazeel_s3adsp1800.py +++ b/tests/functional/test_microblazeel_s3adsp1800.py @@ -7,8 +7,7 @@ # This work is licensed under the terms of the GNU GPL, version 2 or # later. See the COPYING file in the top-level directory. -import time -from qemu_test import exec_command, exec_command_and_wait_for_pattern +from qemu_test import exec_command_and_wait_for_pattern from qemu_test import QemuSystemTest, Asset from qemu_test import wait_for_console_pattern @@ -32,9 +31,8 @@ def do_xmaton_le_test(self, machine): self.vm.add_args('-nic', f'user,tftp={tftproot}') self.vm.launch() wait_for_console_pattern(self, 'QEMU Advent Calendar 2023') - time.sleep(0.1) - exec_command(self, 'root') - time.sleep(0.1) + wait_for_console_pattern(self, 'buildroot login:') + exec_command_and_wait_for_pattern(self, 'root', '#') exec_command_and_wait_for_pattern(self, 'tftp -g -r xmaton.png 10.0.2.2 ; md5sum xmaton.png', '821cd3cab8efd16ad6ee5acc3642a8ea') From patchwork Wed Feb 12 11:24:13 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 864438 Delivered-To: patch@linaro.org Received: by 2002:a5d:4cc5:0:b0:38f:210b:807b with SMTP id c5csp67793wrt; Wed, 12 Feb 2025 03:27:35 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUrQodSRKfRe4kGZbEuQT359qDlT4RhU4mepNzTPYMtfrBjlVHmjFB4qOmNd9YDZ53urzTK8g==@linaro.org X-Google-Smtp-Source: AGHT+IH1iglfERq1s8K7HnmiT7VdnaGYgQLvaPDQ4caEGw7BGC0NfAy2jMcQsnSRPfRnl1Bcj2yc X-Received: by 2002:a05:622a:c9:b0:471:9a28:9cce with SMTP id d75a77b69052e-471afecd10emr36167221cf.32.1739359655388; Wed, 12 Feb 2025 03:27:35 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1739359655; cv=none; d=google.com; s=arc-20240605; b=OLbUw9hlNvACYds0BvfFV5c9Km5QujLbpdDhDXvYFFVKt6luFiYaNzGKWMUP4Q7ySj VrQMqUD0NMAJ/glbd0ixvK/tGr+AoRoXQf42onglukmQ17rKxayt+3pWeYBGlk5ZbdBH sY/A6LclbJWTOMHavAgRvOJ9eG0qTcDDpYg1kqFC+O7HNMpGirGz7ZHI/vWuJdJ0hGMu GRleUyAs96Y250p/gQo9yk3nWWbUDNe/SGGhK0AQPq4ewgewCzein+wMUE9uTOmbfGtG Igp/S6MG3bYBQD42ZOncp0IHU78zv1uP5pFarFS4h5H3pkX5YAcSRAZm0pnWzwFoyZU1 tvlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=dDfJ2Ax294CnyEXRoPzMDNsGf/a2aySSWaKYSBHH7B0=; fh=jOJCUaqOG2VMPu6JD/jWkxWZtkuLU6Urvd21Kw0n41U=; b=R1NujA19Li/5UeeO4Y4swlk8nU2Zc99cT1ckmCJv0CNwPGpVhVVveL5vrdn98WBTAs I3pdyZQNqlr7OqxrZFDn3yeggfSsEMNPuWAwiTzBtoJ8kSXdsHmuo9p2RNMc06WNobWT bn5dbTRBfDCRnojvs/rpOi3ho1zPx2MfeLeKoPY8pSVULH64UUe1Ivn/ex4XNhTrVqMy NDK4ahMvfjDXd3KoGzhr4y4HSWAcvr0l3ksMwksHH+xCf2xeUgOWC3ZuXVkWL3AJe5Yx Y91pFpI8fV8AZuUkrJnj4LKxTPzIKJRtuEcQQT1ILgRxV/VF7NoOxC0DSV/c9rinzhhO Pkjw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=VYEq8Bp4; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47197808111si54740261cf.76.2025.02.12.03.27.35 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 12 Feb 2025 03:27:35 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=VYEq8Bp4; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tiAss-00084i-7N; Wed, 12 Feb 2025 06:26:30 -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 1tiArs-0006iU-Em for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:25:31 -0500 Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tiAri-0004q4-S7 for qemu-devel@nongnu.org; Wed, 12 Feb 2025 06:25:17 -0500 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-38dc6d55ebaso467827f8f.1 for ; Wed, 12 Feb 2025 03:25:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1739359509; x=1739964309; 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=dDfJ2Ax294CnyEXRoPzMDNsGf/a2aySSWaKYSBHH7B0=; b=VYEq8Bp4Aa5JUD+YcySSvPLf/3ZvkD72Og4oD7cz/oyFYk8XgsEPl+VO6iKT3NK2xX W/tvQRXvTz20u88BUDQBJ21QGGlQijcpXvDAa11VpmnRQpBTO2hITXQNbevLCnSJyzQC u0ELq6YwOfEQOmu1fo0Y1guvFS3SM4QlG7EeANJs3Hz7ZorBf1Er6IFt97nMBNUtE3qo oG26VUZsKspWzMeLOJvAsftNKVFlqssQ7322mD1BghAC6bjxOOp2n3yT3xj6GSFibNtp YZaP58rxdub/F97nABEuEEjPZ8CWEGP9uOWYWV7KCGmhUe+MCkCWcLM9D4h2Pg2sDw90 lVGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739359509; x=1739964309; 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=dDfJ2Ax294CnyEXRoPzMDNsGf/a2aySSWaKYSBHH7B0=; b=KXnjA56cdRGKvDMnCgBIr54aswYZ/zZ3LaH6wCTI+kOdStRI4fzemQ5T96rXSnKeKU L2PG7yBuMJfhr+Bqtyyh+XslbeamJxAQSzZ6x6eWPXcc/9Tr9T63VDFYL5hFzy/aBrXw LDmyPAKgguY5Vgr4M5tEgpwE7oCUtq/K5s15ouuQboOjqORM4BXKKRQxbcdbv+9bEHN7 JiO0FNEGGte9B0m96jQS7ckB5DFrwf7ZNum+nLUWc2470lh9cQbg7TDdB048WOik0qLB IIwOiLGMuXDrrDqiFXNQQ02cMiX50PBwS8PEOFTXHR0FEDkHYp8Gq89peVyElUGahXzS 461Q== X-Gm-Message-State: AOJu0YyBDYemX+9sjFdGfx09RMKIahvuq7bqJK4TgL/MjHkbDxfT2YOx XDbnErDzbwa9xuN2Y8LSdCdNW9WmMQbAmCYGpIIfQcYwa5uGQFIjbtCV0/kpfvaINbUmRYwgYqi 5NsI= X-Gm-Gg: ASbGncuVoh7YD+aWhjU1BNrT3YAJOPCHuWMyYI4ZK32FVgr8SDAL2Wod9r4OmPqrHkQ rrGyXwrqfEzA4aReRvNqzFjt9M0n6Qtyk3Ea06jP5QZ/x1rQq/hc61xMFBCNIBLlOXQr5Pdy3le 4QSv/cIILZ4ncSonHPzGXSboPTjDe7JpicCBR1gnv8ncqz5WL4iS+t573I3oKtCAOY1wcCyEjAs k1MO4Xf6ylH+9Z8AIjjFOSqQ4RY31pQ25gMO/U0AVdLcnpaDsRC4fXipfukI3wiaUmRcKzcECDx uOf//FrZeAMD6G1uSFHcRhIGsSAHmXfe5DOdmyUzfQ/p5zaceCvdbNRXht+sPbZo2Q== X-Received: by 2002:a05:6000:178d:b0:38d:e363:494b with SMTP id ffacd0b85a97d-38de439d6d6mr5888296f8f.8.1739359508651; Wed, 12 Feb 2025 03:25:08 -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-38dd4342502sm11629832f8f.26.2025.02.12.03.25.07 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 12 Feb 2025 03:25:08 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-riscv@nongnu.org, qemu-ppc@nongnu.org, "Edgar E. Iglesias" , Alistair Francis , Richard Henderson , Thomas Huth , Markus Armbruster , qemu-arm@nongnu.org, =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , =?utf-8?q?Phil?= =?utf-8?q?ippe_Mathieu-Daud=C3=A9?= Subject: [PATCH v6 11/11] tests/functional: Have microblaze tests inherit common parent class Date: Wed, 12 Feb 2025 12:24:13 +0100 Message-ID: <20250212112413.37553-12-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250212112413.37553-1-philmd@linaro.org> References: <20250212112413.37553-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::429; envelope-from=philmd@linaro.org; helo=mail-wr1-x429.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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org Have the MicroblazeMachine class being common to both MicroblazeBigEndianMachine and MicroblazeLittleEndianMachine classes. Move the xmaton and ballerina tests to the parent class. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Thomas Huth Message-Id: <20250206131052.30207-16-philmd@linaro.org> --- .../functional/test_microblaze_s3adsp1800.py | 24 +++++++++++++++ .../test_microblazeel_s3adsp1800.py | 30 ++----------------- 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/tests/functional/test_microblaze_s3adsp1800.py b/tests/functional/test_microblaze_s3adsp1800.py index c4226f49cf3..650416e0c09 100755 --- a/tests/functional/test_microblaze_s3adsp1800.py +++ b/tests/functional/test_microblaze_s3adsp1800.py @@ -7,6 +7,7 @@ # This work is licensed under the terms of the GNU GPL, version 2 or # later. See the COPYING file in the top-level directory. +from qemu_test import exec_command_and_wait_for_pattern from qemu_test import QemuSystemTest, Asset from qemu_test import wait_for_console_pattern @@ -20,6 +21,11 @@ class MicroblazeMachine(QemuSystemTest): 'day17.tar.xz'), '3ba7439dfbea7af4876662c97f8e1f0cdad9231fc166e4861d17042489270057') + ASSET_IMAGE_LE = Asset( + ('https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/' + 'day05.tar.xz'), + 'b9b3d43c5dd79db88ada495cc6e0d1f591153fe41355e925d791fbf44de50c22') + def do_ballerina_be_test(self, machine): self.set_machine(machine) self.archive_extract(self.ASSET_IMAGE_BE) @@ -34,6 +40,24 @@ def do_ballerina_be_test(self, machine): # message, that's why we don't test for a later string here. This # needs some investigation by a microblaze wizard one day... + def do_xmaton_le_test(self, machine): + self.require_netdev('user') + self.set_machine(machine) + self.archive_extract(self.ASSET_IMAGE_LE) + self.vm.set_console() + self.vm.add_args('-kernel', self.scratch_file('day13', 'xmaton.bin')) + tftproot = self.scratch_file('day13') + self.vm.add_args('-nic', f'user,tftp={tftproot}') + self.vm.launch() + wait_for_console_pattern(self, 'QEMU Advent Calendar 2023') + wait_for_console_pattern(self, 'buildroot login:') + exec_command_and_wait_for_pattern(self, 'root', '#') + exec_command_and_wait_for_pattern(self, + 'tftp -g -r xmaton.png 10.0.2.2 ; md5sum xmaton.png', + '821cd3cab8efd16ad6ee5acc3642a8ea') + +class MicroblazeBigEndianMachine(MicroblazeMachine): + def test_microblaze_s3adsp1800_legacy_be(self): self.do_ballerina_be_test('petalogix-s3adsp1800') diff --git a/tests/functional/test_microblazeel_s3adsp1800.py b/tests/functional/test_microblazeel_s3adsp1800.py index d50b98342d7..56645bd0bb2 100755 --- a/tests/functional/test_microblazeel_s3adsp1800.py +++ b/tests/functional/test_microblazeel_s3adsp1800.py @@ -7,35 +7,11 @@ # This work is licensed under the terms of the GNU GPL, version 2 or # later. See the COPYING file in the top-level directory. -from qemu_test import exec_command_and_wait_for_pattern -from qemu_test import QemuSystemTest, Asset -from qemu_test import wait_for_console_pattern +from qemu_test import QemuSystemTest +from test_microblaze_s3adsp1800 import MicroblazeMachine -class MicroblazeelMachine(QemuSystemTest): - - timeout = 90 - - ASSET_IMAGE_LE = Asset( - ('https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/' - 'day05.tar.xz'), - 'b9b3d43c5dd79db88ada495cc6e0d1f591153fe41355e925d791fbf44de50c22') - - def do_xmaton_le_test(self, machine): - self.require_netdev('user') - self.set_machine(machine) - self.archive_extract(self.ASSET_IMAGE_LE) - self.vm.set_console() - self.vm.add_args('-kernel', self.scratch_file('day13', 'xmaton.bin')) - tftproot = self.scratch_file('day13') - self.vm.add_args('-nic', f'user,tftp={tftproot}') - self.vm.launch() - wait_for_console_pattern(self, 'QEMU Advent Calendar 2023') - wait_for_console_pattern(self, 'buildroot login:') - exec_command_and_wait_for_pattern(self, 'root', '#') - exec_command_and_wait_for_pattern(self, - 'tftp -g -r xmaton.png 10.0.2.2 ; md5sum xmaton.png', - '821cd3cab8efd16ad6ee5acc3642a8ea') +class MicroblazeLittleEndianMachine(MicroblazeMachine): def test_microblaze_s3adsp1800_legacy_le(self): self.do_xmaton_le_test('petalogix-s3adsp1800')