From patchwork Fri Jan 31 21:04:44 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: 861010 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp928578wrr; Fri, 31 Jan 2025 13:06:13 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCWIxbnKjgGXijBOwrurVdzIfzHQctqgqSXrHs3k/HaqVe5fBqMLdr97QShQlbm8xpHYJp/Kkg==@linaro.org X-Google-Smtp-Source: AGHT+IGSutwwLkNaQuvSG2oBA6r6LqRfW+JWfPWjGrIwOzAeTujLX1g5ir2rSWTiy1KDHsOxX2yR X-Received: by 2002:a05:6102:e11:b0:4b6:8e5d:4bfd with SMTP id ada2fe7eead31-4b9a5270524mr10987136137.22.1738357573095; Fri, 31 Jan 2025 13:06:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357573; cv=none; d=google.com; s=arc-20240605; b=TlmNyPnzH7UE8mLXrlunMaoT6ccwYqMtcokVASZHPadwSSwlRPqfE0fu5Jgj+Hz1KG 4eSta22ynLHr4rffHWk394kV6++77vbXI0Cfss+jHi6v1ErEHmAIHYP2Yx0tGk0axkTs I3UC3r5K1D2sVyW7hiruLhsQ1Ax4hZDst+FbKz2GURRBM5f6ljlPL83TZMH4djl/KgsI UHRhl24JqTuyLf+/mRSytDyHkpwshmmB/4ZoIV+W18jsePV30rxJbfKkQh3l6QGDOHLH JsxAlrYT86Msn0Wm39JK8ZVB5xXd/taaJaClPtFqX3gIlrE3YtrDnrZ2qF+IfWDYQ/XK x+XQ== 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=s72GUTdS6dsdZkDxXVs2tqlGQvWBVt1iK6Rxz8AAe/I=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=MV9d0et0s6oIw8iePAKdNiPC/6nBz5DMqCzSQ8LfHZrmCmStwQ9yYTLJPlek4dOxrm zydEYveFVWVLZ7GroxA06xaMrFNV4+EWCKc9eU6iM0M6JNqz/Nrq2OfkKbH7rPvNYABi kwgOe7R9K5024Z8Di9uaBXvpTOG7aue/0Jv61bOogTTx4ieo0xL5zzghscJgYKE7dLtJ FnrxAqRyUkxo+TBLIutNBhbbqFD8OOP6qv6Noj+UKyXaAXcejpf9R9+x7DCnHHasT9bG PCtVU0B21ouhqBTe+gl6bxgQ6hps4PnEh/fTAPC8GkXMwqeTYSuP4utvlGsH8kl00InZ uCCQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=nPuRo0rL; 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 ada2fe7eead31-4b9bad87c1fsi1080522137.292.2025.01.31.13.06.12 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:06:13 -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=nPuRo0rL; 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 1tdyCq-00060x-Qi; Fri, 31 Jan 2025 16:05:40 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdyCi-00060R-Qm for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:33 -0500 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyCf-0007mT-HL for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:32 -0500 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-437a92d7b96so24151955e9.2 for ; Fri, 31 Jan 2025 13:05:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357527; x=1738962327; 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=s72GUTdS6dsdZkDxXVs2tqlGQvWBVt1iK6Rxz8AAe/I=; b=nPuRo0rL5007ePXnkbhOf6RO+XIPFwCEd1RFLR9NTiIlQcQ6YNY63guFfPT4xWaV6L GcSrE+J2LYpM+Gz6LKl08OlX4sHRYd55Q0pssVxfHjwEZgtG4AjqtDIZTNVjyFWg858r y/XT/IK5771lnCXjOhb25P41egLCd21EIOGjZQXm9PMLYqE7zHAKz4HIri4ynlA4w2Bq 7OX1Hwd3vg5gmweMLVP/oVUHH/mEtTwoS95e4KRaK8jpQc6ZqOJSFmvBbEEfD+nLGuCi xb74lHIgjNM9eFy+Sp2eciFvnCsMJno3o13xsOQls0xdX9Yyg1arr9sJ5x9uCNSKuA6B VMhA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357527; x=1738962327; 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=s72GUTdS6dsdZkDxXVs2tqlGQvWBVt1iK6Rxz8AAe/I=; b=NvvouJj7ruk+y1eB2qVnd84HCCsb2jqHHFB9nfnVVr6dyxInR42bQ5/dUPqUo1ORBn toolc9nG14OTDrrp2dxKzjivzoR1XTXnytTZVImzNsRhERorUJG2uZjzNkXwwfp2tDco eXIZOR1/toqC3GfWZ8basLtvrj3ZOl5N5HdCoN/mnIJlN+I0svwE6/nRd07nE6a1FYaJ 4rZ4cfggkyd8pkagwAULm6tuBedKwXqczDG7j5ovJoRj4I1tyNq1TXq8azeffP02XZig Yqp5N3XOe/o6nMmg1MS0iu4OuQNFBGEyluleQf4Bucgnq1ovHGsqT2FUw3NI6cQ6v0uX hNCQ== X-Gm-Message-State: AOJu0YyA/jkF9phvV0Cyp2UQ7JbvWEzzQZfRpiURfOPaN4kOaSEriKX4 anoTZkzbX5PTNmv2/Fmkep+bYfDLZXpcxuANNWdTNoeVspuLw5LrIwjLUebOPWHiErMbvTjP0Ab KqrY= X-Gm-Gg: ASbGnctujeiBkk84jp9Cuv+Vk1+8yV4YCbRPb5Mk7Bs9veyVrf86D/FLipFWRbNxvZL IfXcMpoaBFlPoIuGJT661U/jbo/hlEehkuJUjB7dr1z+B6niIoehgIUfWNN2sW1xS9CWvAVcK0x lLOQKwCLZOqcQBzDXRpI3E6Rw7myy48JCdj/O3e41J69jo7A/kDpF3jmgJ/AYvI7QmQyd93d+Bz cOpRQpWsh65gxzxpNnpK4d1G2r/WOj2x47rJZI+6qICP1VoFHMuVw5B5Y2Z/vs+A3/SmWYRaY3T Bxhpe5RNQ5cRHRU/1KULURoXsmDJsLZOEophOMHj3M1tf3Qmn8dcm8dxm2DqLNWmXA== X-Received: by 2002:a05:600c:4506:b0:431:58cd:b259 with SMTP id 5b1f17b1804b1-438dc432b13mr117494885e9.31.1738357527120; Fri, 31 Jan 2025 13:05:27 -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-438dcc26b15sm101989505e9.11.2025.01.31.13.05.26 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:05:26 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 01/36] hw/rx/rx-gdbsim: Remove unnecessary uses of &first_cpu Date: Fri, 31 Jan 2025 22:04:44 +0100 Message-ID: <20250131210520.85874-2-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@linaro.org; helo=mail-wm1-x332.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 rx_gdbsim_init() has access to the single CPU via: RxGdbSimMachineState { RX62NState { RXCPU cpu; ... } mcu; } s; Directly use that instead of the &first_cpu global. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250110180442.82687-1-philmd@linaro.org> --- hw/rx/rx-gdbsim.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/rx/rx-gdbsim.c b/hw/rx/rx-gdbsim.c index 02fdbdf824b..88c8f12c101 100644 --- a/hw/rx/rx-gdbsim.c +++ b/hw/rx/rx-gdbsim.c @@ -127,7 +127,7 @@ static void rx_gdbsim_init(MachineState *machine) * the latter half of the SDRAM space. */ kernel_offset = machine->ram_size / 2; - rx_load_image(RX_CPU(first_cpu), kernel_filename, + rx_load_image(&s->mcu.cpu, kernel_filename, SDRAM_BASE + kernel_offset, kernel_offset); if (dtb_filename) { ram_addr_t dtb_offset; @@ -153,7 +153,7 @@ static void rx_gdbsim_init(MachineState *machine) qemu_register_reset_nosnapshotload(qemu_fdt_randomize_seeds, rom_ptr(SDRAM_BASE + dtb_offset, dtb_size)); /* Set dtb address to R1 */ - RX_CPU(first_cpu)->env.regs[1] = SDRAM_BASE + dtb_offset; + s->mcu.cpu.env.regs[1] = SDRAM_BASE + dtb_offset; } } } From patchwork Fri Jan 31 21:04:45 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: 861009 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp928576wrr; Fri, 31 Jan 2025 13:06:13 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCU0DpirLwkWSAEacO1ULKii4dp+XxQCHJwN05KqmOObDSRPO9e/nIgB9kcG+JuR67OPS6jcrw==@linaro.org X-Google-Smtp-Source: AGHT+IHKJoi/08YBrWU+GVvnS9HOeldNzJUyNp7agrOrR5HSFVcSI7qsqa94xsaIsmOLPLDhKNk1 X-Received: by 2002:a05:6102:3e0b:b0:4b1:f3e:882f with SMTP id ada2fe7eead31-4b9a4ecab67mr12459255137.1.1738357573044; Fri, 31 Jan 2025 13:06:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357573; cv=none; d=google.com; s=arc-20240605; b=MMFqasCLv1I+NXoqvbFRZ9cA02+DakPJ0wQLS5bOOBJWB5zPe5ngyM7/VYAFWihIMl 3mAv4WLVfzmxe5ASsLwvOwUmT1BQzRP5lsCcLDhlwy7aDDU01lI+H2KQ3iXV9orkQBd5 SbACDanYCYM4CpR/PW66wn1HsDMRikxm6cg86L2vT/mT7E8prJtED3Cc+VETpIUNrgw4 h7MDO2/J6l4pJygKWLZ9jzYBZhk67w67SZQPfVrAsPhSpYsvfXJ9KNUMVBSyum96JE/6 wx/1AP8H9VjziJCyWt8BzgMWqnPfy+iZ8chJgZ0xC4fNfGX6kxJKM5UY+GnnwbiMqm2D 5RGQ== 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=uuEaxaYNcJ4Nljb6SsKbu7siVHsyMjh90AkH7lAJ1Bc=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=hzOG0hlFluzNPP8OeOrbqcq2hTy7YuvER+yJdJUEKnsKM6Ia6RJhvGyt2jM+mJHgID tPBpSDCPtq/v69Q7JC29CJlh/qGY6HGKLmWYQzm4jI+KjeKdtNffIrWtoT+mePtcWWtN wW4ezyRqzw2zT47DfKUg4Fmg+Xrm5ec2wZ7hIjR4iPQ24TSxy06BbhBL3z9DZrujXltB u8juZGCsxGD36spv0uHBZGZuQNKI+pArRILNBES2B64O4L2P1B3JnclGP2NaUCFHFqMf O0S8kcFHsL6fxMj58P134831BLQSSozmLucQvlTZi4KLIUOoyRm2MgJOCxuyUnwgnzgf IxYg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ip2NR8vN; 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 ada2fe7eead31-4b9baa638e1si1050616137.62.2025.01.31.13.06.12 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:06:13 -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=ip2NR8vN; 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 1tdyCt-00061o-DT; Fri, 31 Jan 2025 16:05:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdyCm-00060l-HC for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:36 -0500 Received: from mail-wr1-x42d.google.com ([2a00:1450:4864:20::42d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyCl-0007md-00 for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:36 -0500 Received: by mail-wr1-x42d.google.com with SMTP id ffacd0b85a97d-385de59c1a0so1315754f8f.2 for ; Fri, 31 Jan 2025 13:05:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357532; x=1738962332; 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=uuEaxaYNcJ4Nljb6SsKbu7siVHsyMjh90AkH7lAJ1Bc=; b=ip2NR8vNb0/rjaRqjVnt2TscmexAV7YFPCyB9zr+nMv9PLLpFhI1Xa1Cbn3NRdRY5k 1GGP2oUvTNtndfnR5/qLweX3GYlTDiKeGKB9zql8hK4NM4xmeR1/X9YLkZfqQAbzsSqL nXxMrvUGMZ1J+SN0lFwgCvsuOYLpyK+601DhjgB2Gng7/UIE0ZHwX/U63amZes9+pSPK hZUIZLEQ4AIg4NVZXdCddLYvfPxk4H1MO/oG7j5K3mKL/0/Fy/vYjv+OdKhjVpyifRV8 xjjgHb+EicATLmVLd31pTjTApJQx2w0HNX6dLwAfpc5RvdcGpxJCDd1AKMjU5ghmMQOa bksw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357532; x=1738962332; 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=uuEaxaYNcJ4Nljb6SsKbu7siVHsyMjh90AkH7lAJ1Bc=; b=rYtfTEQ/sgW1QgiwhO2eLsVRs9RwB63v4tPfB3yVng3fI8DE9FajWvFGN/QiJ/LQCf ah9z3MVr8QabZfyOeSMXNIx4HqkcUtVttEOTBfto3W/V21P1sUQqimR/DrpDzLV6D93n Bg8XWNqpUjEZiLBezTgbKZ3rajAU3boqwGnL99IHj4TjdK0pFGn4dhwomQ8UcIM4ldok goVBgkl7XR4Vy52mtA+kceDH2/uOaI6c4NmanT5AdKi8f76LkNO+bOJmoggsvLzMfK1p Vql+W3QeZHQbkZyGBuF53TLSCRFMemcWpC5oOIoxefTFcWpmwn93ulGSVX6dQ8TjQMFs 5V4w== X-Gm-Message-State: AOJu0YwzBGc3RLyOPtZ1m6Wokv0MhquxEwOfnkm73ZxwNLJtnKn+aw5d TxNwGuZamwc78pc1eLomUDqqg+rwP7l73yHiipqkiVUmpf7tvgK7ZMGf4k0ZP5rmXRX6wyiQWC4 k5ms= X-Gm-Gg: ASbGncsd1ObP2Rgx3Ww4BpKjlRc3zKB60Nc0x5D7hiAKeDMuFxySxE4yZQ5F4zPU258 pGvTmN0eUejcNhP14TDorZ3WhlJ7139SulOPe9jAIOYJHjQyD3bWnzG1FHXEWz17gmdxJiPNYUj EIbvXwPR0nAWK5jM7YCeO1YghbmO5d0Jiwpflqj4KoJhzp1wS0epwlhdA4aC/hlnvnxeqikwekb D62jRceCly+qKs90y8S49nbpqCerWhdFhs1TL6V4qRbYMeihER09y2kHe5ven/rsk/M9IYgsvU+ fv9UMnPyt6+aYZ7DoiHs1PVrU4IbjLQ2wWM5q7VZL3RnVQHVd6s+sddFZrs/EZbOnQ== X-Received: by 2002:a5d:584a:0:b0:385:f72a:a3b0 with SMTP id ffacd0b85a97d-38c5209664emr10539820f8f.55.1738357531737; Fri, 31 Jan 2025 13:05:31 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-438e245f5a5sm67853195e9.40.2025.01.31.13.05.31 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:05:31 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 02/36] hw/mips/loongson3_virt: Factor generic_cpu_reset() out Date: Fri, 31 Jan 2025 22:04:45 +0100 Message-ID: <20250131210520.85874-3-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::42d; envelope-from=philmd@linaro.org; helo=mail-wr1-x42d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 main_cpu_reset() is misleadingly named "main": it resets all vCPUs, with a special case for the first vCPU. Factor generic_cpu_reset() out of main_cpu_reset(), allowing to remove one &first_cpu use. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250115232952.31166-2-philmd@linaro.org> --- hw/mips/loongson3_virt.c | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c index f3cc7a8376f..47d112981a2 100644 --- a/hw/mips/loongson3_virt.c +++ b/hw/mips/loongson3_virt.c @@ -399,25 +399,33 @@ static uint64_t load_kernel(CPUMIPSState *env) return kernel_entry; } -static void main_cpu_reset(void *opaque) +static void generic_cpu_reset(void *opaque) { MIPSCPU *cpu = opaque; CPUMIPSState *env = &cpu->env; cpu_reset(CPU(cpu)); - /* Loongson-3 reset stuff */ if (loaderparams.kernel_filename) { - if (cpu == MIPS_CPU(first_cpu)) { - env->active_tc.gpr[4] = loaderparams.a0; - env->active_tc.gpr[5] = loaderparams.a1; - env->active_tc.gpr[6] = loaderparams.a2; - env->active_tc.PC = loaderparams.kernel_entry; - } env->CP0_Status &= ~((1 << CP0St_BEV) | (1 << CP0St_ERL)); } } +static void main_cpu_reset(void *opaque) +{ + generic_cpu_reset(opaque); + + if (loaderparams.kernel_filename) { + MIPSCPU *cpu = opaque; + CPUMIPSState *env = &cpu->env; + + env->active_tc.gpr[4] = loaderparams.a0; + env->active_tc.gpr[5] = loaderparams.a1; + env->active_tc.gpr[6] = loaderparams.a2; + env->active_tc.PC = loaderparams.kernel_entry; + } +} + static inline void loongson3_virt_devices_init(MachineState *machine, DeviceState *pic) { @@ -572,7 +580,7 @@ static void mips_loongson3_virt_init(MachineState *machine) /* Init internal devices */ cpu_mips_irq_init_cpu(cpu); cpu_mips_clock_init(cpu); - qemu_register_reset(main_cpu_reset, cpu); + qemu_register_reset(i ? generic_cpu_reset : main_cpu_reset, cpu); if (!kvm_enabled()) { hwaddr base = ((hwaddr)node << 44) + virt_memmap[VIRT_IPI].base; From patchwork Fri Jan 31 21:04:46 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: 861042 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930715wrr; Fri, 31 Jan 2025 13:11:15 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCVMsWQxi0fgIXrGlZGmvi/jU5k2WjhCHHroCGo2SWptEkSl2HKmyOCJ8FDsGwC03r/I3E0jhg==@linaro.org X-Google-Smtp-Source: AGHT+IEB+9u9QRjmPKG1BQGL3CttLUSgK7l8Cd+gy52yKV4rvKrYt1VKfBkLzdR2CseVndAop7+9 X-Received: by 2002:a05:622a:1189:b0:467:b7de:da8a with SMTP id d75a77b69052e-46fd0a80792mr201844781cf.6.1738357875477; Fri, 31 Jan 2025 13:11:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357875; cv=none; d=google.com; s=arc-20240605; b=Ma52k6uys5QZ7m0HhyOrEtRyN2ezjd4JtUrHsiCDLasLpWaW5kpqoTPuEJmZNVjmcg dbV3pWv4f7MWRve+sIWpVXMSf/s5gQ8ZAXSV0ev+rXHgM+WDABJpSsa7Fy8wRKKkZnOK KraXa347xkOMtcYv8pYMVOEXlslSvP2Q5p2nGypOfJNRIU8GnVlttcnGv198awjanzkz SGd5vzAw6R7G4dbILRcAUxkcjtKb3dI/B0Vz89KZ9ovCCwEK64XagRBv3YaIlcx467G5 88lYNRLMAiLpzM3CZXgxJdqc9HuiD+IHLLFk2K4kV5ET1B4smpGnjgu1UgcNy3yNoA6P A65g== 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=15w1nupw+QeCLHgv52eCdDFsKAOjsC/FzZz5ZeEtw0g=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=OrGnlwHFu5lFSJyIsLbME/hCemxzIzxHoWUnXxEswaatBIvictRC+VVHoom6xK7Ndr Ci6umx3PfrL3P/lhhZcvknmlYpyeOnAPJIUZTlGVyKh94itn0cx8/WgQS2LCJ1KWYAb5 CLtm4VyhVbeblD4GiL45ZrpHPROmf8fjIHsAA/BepZfCBsxt2Vuje2jHEQ5mZyDDBla+ ut44cs4WzSALv1TER0i4m8lAln1AS1Lsp8thi7cvNs6VsgQQvKUmAOGnxWL86H+wt9U9 LdiHWDJdm53YmSqZdc9RUbBz0tR4m4jfASnzzsTg/+v4h7l50gtCN9yh5nd1ApllUxQw DFJw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=EQZemB7Z; 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-46fdf1e4626si45950031cf.595.2025.01.31.13.11.15 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:11: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=EQZemB7Z; 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 1tdyCv-00061t-02; Fri, 31 Jan 2025 16:05:45 -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 1tdyCq-00061I-EP for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:40 -0500 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyCp-0007n8-0H for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:40 -0500 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-4363ae65100so29280385e9.0 for ; Fri, 31 Jan 2025 13:05:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357537; x=1738962337; 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=15w1nupw+QeCLHgv52eCdDFsKAOjsC/FzZz5ZeEtw0g=; b=EQZemB7ZPz4tY7RRzGIVjXhNZTgc3CBEGid3KzPznhSY0oT66lkPSgO7PezrGSk5SQ vn//uTqpl44kjo5ayrnRhitsmwfzgWj3wLBdrYuC+HPHA5+Q5r5MtD5qfEhJim7pNF6E vm0dEjUXyb0sNEMNMh4hT0TSU1dQuudR0zqf5DfwJYOTXILXYjgVYlk3l0Gg2R0R0lhn modgmA8O5EF4O3EvVZvs6Ea0Rzine5ngaMnEf2yFkCe0lIBJmkJTzoFyM3tTeC7SMB7+ 9XKgpqFV4x3OlB7vcmmTOywV0UENdM+O3eCQsuSerGUFl9rkvXt7tU3Wva8LGMaGsIRq TzWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357537; x=1738962337; 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=15w1nupw+QeCLHgv52eCdDFsKAOjsC/FzZz5ZeEtw0g=; b=rP+5gSE+LNyG4LixaA3zK7GDMhO1paQrs8xSdMb3H7IXWZGGcsFy4sav4syC5AaBn6 AAqawse9WltHH5Wfq7NgJXShTr/0ppKpMO3gs65ZH2cs39ECiYKT8sRCJgJiO0bHT5KI i7Tguygg89bZckZwnCHJvhhh5gtmFu8lnv9WuZqw7LVl4AeOJAQ1GhZx3B/LAoh3GqMf Zu+3oB8NntByi+YiIBs0p3vUX30GJ8B/VoHN7AefB5NJ6aJTpDU37HhHJGfiqtopZslF kNHoV1/Jr9DcD3TF76jEKrN5tRkkazbar6tPoZWxBRtAPfgmtfTUp1Bt+5/qfkvo+eOs D4KQ== X-Gm-Message-State: AOJu0Yw50uCa7bh3RpGuwIElqYDSq7iFFn4h5uD0PLNbdxJp+r/7ZRY1 w1YqyB59a+uGFPvs2Wmjawb5iO3Z1HPC0h5nQY4NLSPj0Yr71lTW459gV3vIWNSHqXY6+sIaXG9 uke8= X-Gm-Gg: ASbGncv1Uq+k0oEJm94/mmCBfQhse5vIRfVRwaqwY7m7rLPV7SnYsKjnW3lxY2cvF9o SEOMmJ2G6rYcnYmjvzIbrMDLfq2diuRgQ1VRwULhjEjTZF/v4jXMzgeAfyjYyOIJ/lA8ztFmMhx 7lHRIOiMd8Ekba6P95AzEPxZpRlCahxzz9j8UOEU+Y0v7Zw/AXPzDtZc9NrPHOZi/y7Id78PRP5 xst/e1a9HQC+Kn/pDpCTUXqOaiJ7JxP46Fvxctn+AaIxhqBe6LUgydppmwIYrFs5CNLIWopt8Xd Njy2dW20VqFKoyc4n7hYKbsAS3gCK3AZWHoeZVuodDV/o7kgM05tzmv0kwYi6Q6viQ== X-Received: by 2002:a7b:c5d7:0:b0:431:542d:2599 with SMTP id 5b1f17b1804b1-438e07cd500mr105141355e9.22.1738357537202; Fri, 31 Jan 2025 13:05:37 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38c5c1cf53asm5467812f8f.87.2025.01.31.13.05.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:05:35 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 03/36] hw/mips/loongson3_virt: Invert vCPU creation order to remove &first_cpu Date: Fri, 31 Jan 2025 22:04:46 +0100 Message-ID: <20250131210520.85874-4-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@linaro.org; helo=mail-wm1-x332.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 Create vCPUs from the last one to the first one. No need to use the &first_cpu global since we already have it referenced. Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé Message-Id: <20250115232952.31166-3-philmd@linaro.org> --- hw/mips/loongson3_virt.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c index 47d112981a2..28d4eaf1e59 100644 --- a/hw/mips/loongson3_virt.c +++ b/hw/mips/loongson3_virt.c @@ -492,9 +492,8 @@ static void mips_loongson3_virt_init(MachineState *machine) { int i; long bios_size; - MIPSCPU *cpu; + MIPSCPU *cpu = NULL; Clock *cpuclk; - CPUMIPSState *env; DeviceState *liointc; DeviceState *ipi = NULL; char *filename; @@ -569,7 +568,7 @@ static void mips_loongson3_virt_init(MachineState *machine) cpuclk = clock_new(OBJECT(machine), "cpu-refclk"); clock_set_hz(cpuclk, DEF_LOONGSON3_FREQ); - for (i = 0; i < machine->smp.cpus; i++) { + for (i = machine->smp.cpus - 1; i >= 0; --i) { int node = i / LOONGSON3_CORE_PER_NODE; int core = i % LOONGSON3_CORE_PER_NODE; int ip; @@ -609,7 +608,7 @@ static void mips_loongson3_virt_init(MachineState *machine) pin, cpu->env.irq[ip + 2]); } } - env = &MIPS_CPU(first_cpu)->env; + assert(cpu); /* This variable points to the first created cpu. */ /* Allocate RAM/BIOS, 0x00000000~0x10000000 is alias of 0x80000000~0x90000000 */ memory_region_init_rom(bios, NULL, "loongson3.bios", @@ -640,7 +639,7 @@ static void mips_loongson3_virt_init(MachineState *machine) loaderparams.kernel_filename = kernel_filename; loaderparams.kernel_cmdline = kernel_cmdline; loaderparams.initrd_filename = initrd_filename; - loaderparams.kernel_entry = load_kernel(env); + loaderparams.kernel_entry = load_kernel(&cpu->env); init_boot_rom(); init_boot_param(); From patchwork Fri Jan 31 21:04:47 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: 861011 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp928577wrr; Fri, 31 Jan 2025 13:06:13 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXpqTbp8t3C/WotzqBwvZ+iEy3YpJMknpBZdYViHIPQ/8+hNHkxNPeM8LpZh/Ea0Vwo5htpTw==@linaro.org X-Google-Smtp-Source: AGHT+IHcBlE5ZrAkb+YCNDJ9LnFMGuOej6KyUpeaQAFo4LcOYaXImeaV+BiSMN91utrL4oY+6wEM X-Received: by 2002:a05:6102:304e:b0:4b2:5d65:6f0 with SMTP id ada2fe7eead31-4b9a51dde4dmr11611628137.19.1738357573097; Fri, 31 Jan 2025 13:06:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357573; cv=none; d=google.com; s=arc-20240605; b=GuidjYE81rI3re4xFp8DSoEzIcu9HY5Bz4b5Atw0YByxS6pljqrHF2e/L4Gmi1Lup1 rJENgWSMoNO4cWSUz2fzKx6lVUuXWh994DcQ70QM34ZpI48mNr+PnceXHlTtUVvg5dXv 8+/e3fpuk9NQkbolfQVgbMykd2jfXlSV4SBQsNtr9cZb/Nzdwtuh7eR3+0c6wSdrCoXA jfDAswxIbrMx4LEecgAMpkjXVl4hFZhgmZww6kAAJNDYZV5p91QikbjEIeP3+rhn/82a OPXZswS/q8C9eftSPMZYlqqC/tRPzu+tARK0MuPxI6pAxnOpYM4d5ShZT5azsQaD9y9s e8NA== 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=ujxDD2sHsagbBA/qRpPrMUaFSLbGQVTGtRFXtuxkUAM=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=HyD+NX95jCJTl/Wp75mSZEuz2I4jQf96Bwib4FQYOgHFNz8eyQ4pbY37uplgHvY34G gbuD6Id80ZSefGgzFzbzoq0SelpCK6XuIyUq0IwN7w4LqNeXVlJh5OWxE1C+IswDvhTF tJUTe4D1Y1IAHRkfvvg80Qz0bTO+B+O/lAnm7BiHb9Mxm+6xYeDVH/eVSfBvzSbgNqzL 7R5pFl5cYi2+oiD3eGvGu+cn83sW+fLm7c1/TzrrYadrhL9I9Bc7JFHi8oSWz8oUHT9N sfDjA0W7v6GzPR9Lg4ElgZyEc2yLDRTqAiHNoUYwtw/Rh75Bgnm4uPaM2phBPs6UH+ix 0zVg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=T8CX0Mkr; 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 ada2fe7eead31-4b9baa6315csi1067339137.69.2025.01.31.13.06.12 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:06:13 -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=T8CX0Mkr; 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 1tdyCy-00062k-OW; Fri, 31 Jan 2025 16:05:48 -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 1tdyCv-00062G-6K for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:46 -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 1tdyCt-0007nL-IW for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:44 -0500 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-4361e89b6daso17367705e9.3 for ; Fri, 31 Jan 2025 13:05:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357542; x=1738962342; 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=ujxDD2sHsagbBA/qRpPrMUaFSLbGQVTGtRFXtuxkUAM=; b=T8CX0MkrL3GXGVl4pGvB6YjFglnNqRqc6OiV7V5EdGuTNZAtp+u3471qYB2Ar4XlLK GSKP7MEP73jV36sBONqUtW8Fqo75HT2snF4NmPqzskkD1OcmkHZO/kFGTJHkzqn7fS7Z kQuLaxhZQISty1RXOGUF74T1VKN4GjEJWmUuP4vYG0/211G3ATRTJw3+6W/+9uSS6+Nd 3Q7G9OdRjPZZHunGAUL5qLUUcjQrYW5mxZEO5RUkL4cqF+sm6J0SJ4CPS6DkWkXlhrNC 8h4moXvI+ahqyn8hvMZenIxIcbuX7rytCLwqRvfc/QsrDAj/JGfLwMOgBYeWFwQ1EzoB CMZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357542; x=1738962342; 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=ujxDD2sHsagbBA/qRpPrMUaFSLbGQVTGtRFXtuxkUAM=; b=nZRmuOg1iY4IFpOz9i2bvEg626uxQhzqIn+mO/afoqEFBKz4okP3PTuG56Axyae91P Bn7sVrHIpBsQALUy61i82yZg3uqr4TkcW3qhbk8hilHzWh/xshkAh/ajhD/B2ANKqVPJ rL5UBZDJkpM5te1Pn3cjN3J3cWig5FKTxhtbm6vV4YsWteqZ4A2Y2j+Nl0BtJXobesP/ CSIJgjah+DW0yanJ1xXAyPpLWwBxNlH/sjdS0J/dgcmu2N0Ts4uXFdGHG5fT0T5IKsdP bbkJBk3T/j2mODhxxuKBVKZYU0wuTm1mo6bK7jxml2N+XmRB7TqM3bLZG5CQhbDAbTEd jY4Q== X-Gm-Message-State: AOJu0Yy7hhhLhrF/yRJpokJXam8qiYXuN1vqykvtacYxsLUU1v0z/7HK BKnPyYDdncpUR9ZwY3wPMOi0ipEeiZb+Y8ypQjwxwAuhL4lZl6scWDh5Fs3XNgEWESGOdqLGjrB CBQ8= X-Gm-Gg: ASbGncueXdnz7Wqnt42R1l6HJAioO3MK8nJDHpHlz85hrW7Y8cKHeYGMesi8txmxjFH Nn/bfNrwKRDf7jkKp9ptgG37bS/43ZTho1k/9G7fYMpn9QluyEA+tO8tIho4z/acvGNRtIXvz1W nPzPTndLIwgFOl5pl+pjNarZ6W2E6Jg+6jOQDz4lyobGu1NAGpOqwSfb80iEw2f4FhiNaUs4bjk 5TjmasiSHfoveweW+byVcCQ4AC6Um3pErRw7TLvTa2TRi96eO1xhphdzOSNKFMF5IIwtpSxcdlO m23pw5oG0CEQC0q+x7adX08Y2KeL/8V7TmGZVND54pfUIrixaW24FDr3yNLZLmySKQ== X-Received: by 2002:a05:6000:1849:b0:385:dea3:6059 with SMTP id ffacd0b85a97d-38c52097553mr11435996f8f.49.1738357541694; Fri, 31 Jan 2025 13:05:41 -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-438dcc2e239sm100925545e9.18.2025.01.31.13.05.41 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:05:41 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 04/36] hw/mips/loongson3_virt: Have fw_conf_init() access local loaderparams Date: Fri, 31 Jan 2025 22:04:47 +0100 Message-ID: <20250131210520.85874-5-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 'loaderparams' is declared statically. Let fw_conf_init() access its 'cpu_freq' and 'ram_size' fields. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250115232952.31166-4-philmd@linaro.org> --- hw/mips/loongson3_virt.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c index 28d4eaf1e59..45a524cca89 100644 --- a/hw/mips/loongson3_virt.c +++ b/hw/mips/loongson3_virt.c @@ -280,7 +280,7 @@ static void fw_cfg_boot_set(void *opaque, const char *boot_device, fw_cfg_modify_i16(opaque, FW_CFG_BOOT_DEVICE, boot_device[0]); } -static void fw_conf_init(unsigned long ram_size) +static void fw_conf_init(void) { static const uint8_t suspend[6] = {128, 0, 0, 129, 128, 128}; FWCfgState *fw_cfg; @@ -289,9 +289,9 @@ static void fw_conf_init(unsigned long ram_size) fw_cfg = fw_cfg_init_mem_wide(cfg_addr, cfg_addr + 8, 8, 0, NULL); fw_cfg_add_i16(fw_cfg, FW_CFG_NB_CPUS, (uint16_t)current_machine->smp.cpus); fw_cfg_add_i16(fw_cfg, FW_CFG_MAX_CPUS, (uint16_t)current_machine->smp.max_cpus); - fw_cfg_add_i64(fw_cfg, FW_CFG_RAM_SIZE, (uint64_t)ram_size); + fw_cfg_add_i64(fw_cfg, FW_CFG_RAM_SIZE, loaderparams.ram_size); fw_cfg_add_i32(fw_cfg, FW_CFG_MACHINE_VERSION, 1); - fw_cfg_add_i64(fw_cfg, FW_CFG_CPU_FREQ, get_cpu_freq_hz()); + fw_cfg_add_i64(fw_cfg, FW_CFG_CPU_FREQ, loaderparams.cpu_freq); fw_cfg_add_file(fw_cfg, "etc/system-states", g_memdup2(suspend, sizeof(suspend)), sizeof(suspend)); @@ -633,9 +633,9 @@ static void mips_loongson3_virt_init(MachineState *machine) * Please use -L to set the BIOS path and -bios to set bios name. */ + loaderparams.cpu_freq = get_cpu_freq_hz(); + loaderparams.ram_size = ram_size; if (kernel_filename) { - loaderparams.cpu_freq = get_cpu_freq_hz(); - loaderparams.ram_size = ram_size; loaderparams.kernel_filename = kernel_filename; loaderparams.kernel_cmdline = kernel_cmdline; loaderparams.initrd_filename = initrd_filename; @@ -661,7 +661,7 @@ static void mips_loongson3_virt_init(MachineState *machine) exit(1); } - fw_conf_init(ram_size); + fw_conf_init(); } loongson3_virt_devices_init(machine, liointc); From patchwork Fri Jan 31 21:04:48 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: 861012 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp928642wrr; Fri, 31 Jan 2025 13:06:22 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCVQWkhB81GrZ2om2VXHzvUGWjy3YDe6ElF1h8LBBUmqqA0Rly0HIE5s0TFU0eq0lV/pr2BS+g==@linaro.org X-Google-Smtp-Source: AGHT+IGMmx/D8gLBY6m84e+DBO2pgWXUZW4aHE4a3aVfGbU5n1j8bLUuZgFPeDf2UnFoODcYUfGl X-Received: by 2002:a05:6102:b0a:b0:4af:4902:153e with SMTP id ada2fe7eead31-4b9a4f50f7dmr11305326137.9.1738357582530; Fri, 31 Jan 2025 13:06:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357582; cv=none; d=google.com; s=arc-20240605; b=OStS8Vavze/dp5TqJvPGLLTbYJrrxFYksIqgxgstLdzR1HCHvK94angMxAVN2D6/d8 BsADyILXczrRy4vdtRatAzWuSUsn3QWl3lfbjo3cLE5Vi2kbwmVBj57gM/SJzx9vIIQL kxH8caG9qBPiut0oP+eGDwgkFWjlT8HTlYIlJrrzW4+roVsIZvXDbullzXnmcdqfVmeX K4nX0bnqQpG7DbMjRsGWoKNUmsc4dbzrFfLdJ5DZS0bF2R0piyA58woaHJZSg1edwu7L It4dm9mB09057bODd6RDuG4PzHlpOafmD64x/U67j+PXC8+ZdoVMK8/qSakyOAvWviCl dP4Q== 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=zkI1x48a89NKwPE68PZIsmK31RuXF94y4KuLgkd4bSM=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=arGLrILghz/9Je272TL/2w05Vhg432IE5YuH8tH/RCA2d/YrjVbcinBvDVAvNDAWJW JC0olhS+/kvG/TnOcBoUZa8cq6Dh5jKr7g562MtIP/vNHSFV8vx5fNqo1LvJyXUzwS+/ 50JgPx1SbeeMPwhj2BczRaYdT+tT9WayKid3VwVMG+VNS3PUSs+9M2FDbqflVumsCu16 3mQ57CemJCADWY0gj5pWAGrpDdr/LBx9CeKHTPRL3kUohcsN65/CjIsXRragOLRtc7mN 2urPYrVzQwCQje2PMo5k9eH6aL22xo9ezdOw3+AeLFqyG3b+NximRbkFgQGvAQNKU7cL y6wQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=fYyAMrsA; 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 ada2fe7eead31-4b9bad87dfasi1052341137.228.2025.01.31.13.06.22 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:06:22 -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=fYyAMrsA; 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 1tdyD3-00063g-W3; Fri, 31 Jan 2025 16:05:54 -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 1tdyCz-00062v-HR for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:50 -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 1tdyCx-0007nk-Vi for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:49 -0500 Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-438a39e659cso17376505e9.2 for ; Fri, 31 Jan 2025 13:05:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357546; x=1738962346; 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=zkI1x48a89NKwPE68PZIsmK31RuXF94y4KuLgkd4bSM=; b=fYyAMrsAj5uZZK+75jrb5P9sO90fr16Pb/Iv3WGK8OuMYYb2U9iSKpVXcXam82Sq0P rW3JIszyhN0UPAdGTkFCK0t/BFxQNOiC/qeu8G+72DW42wMHVXUoaJQtdopeloA8aTA4 S4RkpclaPgniWSG2zFgUJCPgiFq+zKpalL+jBdhD6Sw63CwJN7ezXjVBRXKlWplD4L1L rqUk+USQkrUiinSBynOXAhbMM1whmdfKFyyohIid447l1PMxcyjffB+FfAOqC4+IXJql BVnsiMkDTogn+BaYAXK+CnFrtpsPZpfQ79MtjJ737SaI1hOClq4/PztX2D/ULCcIgGn1 edrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357546; x=1738962346; 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=zkI1x48a89NKwPE68PZIsmK31RuXF94y4KuLgkd4bSM=; b=Yk+js7z1Um0Q66T/db0zr+buMd5Zroi0HxTWoXKMb7h/EHtJNNmRoIv4d7r5IBhrVF gQUIz095HRgcTfr19baQ8RqCHokRf+17Ni6kzWYgfbwoayf2kqLQnzMGHT4kfQCpxHPH 5AbP9nxG9hdRngh9afl3Y9Nlr/AYvsenrMqD7ThdBXs201DcZVAkUg6NzUMW8kdrrNDU 8TxkAdf9ZB9AtyGiF6o2fDZitkfUDva+pLiVSS5Hp8WRkRitVnxWvuAf7rx1BrV7TWKb sjwbcuU6Ia6YaV7asQPtQ85IWg/PyMiXdZ3FF2XCLtFQiNJ1OPcH/N8WJrcdr2+1gupF C/0g== X-Gm-Message-State: AOJu0Yw3Y0RmBkzl9OATTfnSpCykkaJNtqLMkEqEvUEDY00XhBXH1Btr 6l2mN82AGxdgXGf8jVemCvh4+Ubge8gWM+Bs+/X6UxFzi15D+c697TqWxVm6JW9No2vKK8fYNUx d3IQ= X-Gm-Gg: ASbGncvcggkLiJxN5jvwPakyY4Jm8M+CCZmuVySn91zAGS0gxq5g7S10aao4yk2HX7s 2v+ZgTlP5pgXpBCNKSVcIjICwxYGxl4s7fIKMyJ+e4JDnf0SdH9NqhN3PPuET6iG1AKJkHTt1lm oaHYrDTMNIum31baTosdDp4nFEIWY0lRxtNfRwaxJVlOYuJ4LRoNuF+zk73qU0y97+ZFpT4xK69 bvLxKlohVJGt1wNex+3TN1o+Qb/JwRe9+PwziVzg1bU+GmDeditoaV5fZFdHtogjTagwXAmkarI EvwWyDCDlbKIzQeRCJCUpH+X79B2FDmJ2ocyEpu+5jdlT79q4zl1ZlC0jYqFoYTKXQ== X-Received: by 2002:a05:600c:a45:b0:434:f7e3:bfbd with SMTP id 5b1f17b1804b1-438dc40cf15mr105997925e9.23.1738357546296; Fri, 31 Jan 2025 13:05:46 -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-38c5c102bccsm5501317f8f.27.2025.01.31.13.05.45 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:05:45 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 05/36] hw/mips/loongson3_virt: Pass CPU argument to get_cpu_freq_hz() Date: Fri, 31 Jan 2025 22:04:48 +0100 Message-ID: <20250131210520.85874-6-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 Pass the first vCPU as argument, allowing to remove another &first_cpu global use. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250115232952.31166-5-philmd@linaro.org> --- hw/mips/loongson3_virt.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c index 45a524cca89..9f6fdd0f287 100644 --- a/hw/mips/loongson3_virt.c +++ b/hw/mips/loongson3_virt.c @@ -153,7 +153,7 @@ static const MemoryRegionOps loongson3_pm_ops = { #define DEF_LOONGSON3_FREQ (800 * 1000 * 1000) -static uint64_t get_cpu_freq_hz(void) +static uint64_t get_cpu_freq_hz(const MIPSCPU *cpu) { #ifdef CONFIG_KVM int ret; @@ -164,7 +164,7 @@ static uint64_t get_cpu_freq_hz(void) }; if (kvm_enabled()) { - ret = kvm_vcpu_ioctl(first_cpu, KVM_GET_ONE_REG, &freq_reg); + ret = kvm_vcpu_ioctl(CPU(cpu), KVM_GET_ONE_REG, &freq_reg); if (ret >= 0) { return freq * 2; } @@ -633,7 +633,7 @@ static void mips_loongson3_virt_init(MachineState *machine) * Please use -L to set the BIOS path and -bios to set bios name. */ - loaderparams.cpu_freq = get_cpu_freq_hz(); + loaderparams.cpu_freq = get_cpu_freq_hz(cpu); loaderparams.ram_size = ram_size; if (kernel_filename) { loaderparams.kernel_filename = kernel_filename; From patchwork Fri Jan 31 21:04:49 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: 861040 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930518wrr; Fri, 31 Jan 2025 13:10:45 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXUu/PnFf4MVuuuRS5s5cUs+eRpJaJ4LtUQnZAP9BLbSSYxGbSyE/43df+kjZbdaX/wxUA/VA==@linaro.org X-Google-Smtp-Source: AGHT+IHhNHO2loFQq5Gtd2TkVGUKr6pw80qIcgoD0+FBY0VRslROx1Q5ioBeqsAVgn9t3g2/ihar X-Received: by 2002:a05:620a:199f:b0:7a9:c129:5da7 with SMTP id af79cd13be357-7bffcd0ecc5mr1620852585a.29.1738357844872; Fri, 31 Jan 2025 13:10:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357844; cv=none; d=google.com; s=arc-20240605; b=f/jiSxyQkYV4L5EnhEOD8FPfBkAFDJApU+PRHsgt5scqn/jBqVnizqp2XdtpQtAchD YGUMrMYRaVTDWpMXDIGZKxGMAR7U20kWH21OIUjAb9xca21wbOKWt8fE7V3InGWkjlzE fSWPX0mRjtFRbhWxukVlFGA53grbBGYkZFtzJs6xqq8z1dVAGGndXACSvDs5O5Ju1FbM s2II27PkptmOqc91LWM2Ip9X1z027AAgptU22KtEENAd5z3NG+AuxMIr0ejih+GBO8R7 oigKcnUFuw0Lm8JrHcyES7Fa790cMXVz5zdgY27heuFQeoyJ4C/KSCtad9Zv+3Ekag+z vBuQ== 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=QIVJQJKGcg0YWEqQO8oUWHaR7BCknrlB7uO1Y3XbfxU=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=RsvgM9Tg8HFPO82T2quEpaNOPdBlcJ3ZGTLwmsOL5ormkYNBqr8/PeqwMFc0gd3Vaa ALyJlepQqbDNfasuWXXLOAlN3Zby43fR6d5D0Ig1q+aHPvtlU9S4G7mRnHvEItYka75v +mjvJX7jiyoQH8JNMqaopCeCZogqR5tgQDfqzUzFHMddepgR9dxsTHIxrla+9lKK1m8u 6d6fy+6jBKNwqkb6/qipUDfjLCQvwE3KQVnvfMjexV4WAdMI3aNKyTT0xLFX+dX/1Vu0 HUWpEPOfBrDZZ9p/vieXYIaxeX8SxN/SJh7uHlniKpTWVcA9ZUn7m5Ol4FukR59+SDNj WDTQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=OVjpK5y1; 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-7c00a90d3ffsi460363785a.453.2025.01.31.13.10.44 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:10: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=OVjpK5y1; 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 1tdyD7-00063x-47; Fri, 31 Jan 2025 16:05:57 -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 1tdyD4-00063m-8i for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:54 -0500 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyD2-0007o8-Kz for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:53 -0500 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-3862b40a6e0so1587451f8f.0 for ; Fri, 31 Jan 2025 13:05:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357551; x=1738962351; 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=QIVJQJKGcg0YWEqQO8oUWHaR7BCknrlB7uO1Y3XbfxU=; b=OVjpK5y1pKIIw/QkKzIpMmQKB0ER0fOzShgcYrhL2GVU6ndLzYkrWzpR0xD5K6Mblb RgR2p4nM3IByvgze9JQN/jqIq136PnjgyJb6wlMQB7L9r0es75RcJb4M4a36wH90cE1Z tPem9aJ1+YVy/SO3xZTjs1oVfZh4UE60696PzMR46bVY1nZR0vLVT1mbONl35ZKMsKDC /WTwlphVu2FidoQQ9P9KCAXdGVP6gO0FHa6I+L+XFw94Xt2/qQNtsomTIdNe7vATAu9q WrjRUDtU6kLvs+eJXxAWlHdyiAnbNou2VoZiQEETD4z3BGxvIhsYlaRLycpVPqsXKLPi yrfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357551; x=1738962351; 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=QIVJQJKGcg0YWEqQO8oUWHaR7BCknrlB7uO1Y3XbfxU=; b=VsgqqqzjlyIpTiClXz6kHwslvmJUSs1A4Y27KcqkkGgaCMRC3xMXFQpnARucOT113Z 0PQrecwxeYOS+iJP+u52XzwIHNadMtk58Spf8uT1Hi+M/0KrmHsIYBWpVDDBq39tHMbt 0SOJuYjzmi1hmM6yyMgmqk6IyGc/gqmY7JV+T4mSOADJ2dIZ9izZ7T4o+BCkmLGBzTi2 rY1VQRnoMqjB7C4eG1D3wF5y7jxvvWimwmkb2L0HEucY8et/5QrcYkxLETFubCp3v/6a A4msA61y0Ji4qqDsr4+X2X5WtFNblxxfTCpEIV2eyclB/4UnkilcxE9o72b04vAcYcol kUUg== X-Gm-Message-State: AOJu0Yytj02qmfBs6+IZ9ZBD5QelnRzhiF8PWIK+j1etoVBLEvODZqUv jr8bPQpg6vLeIh6U7ovG14lFvm++LPDj55ZgFo7Gf9QLc2o4nSTVN+9zdYqZik8gGKCgVuede9R C6WU= X-Gm-Gg: ASbGncvBbVLGWo14L4SBu5g85nmnHteE246PRm9mBnC8mH5Mb2/4JWb0xDbFRj9NrLR 98Yl0WEm2WesGWqasHn8J8wV4goMkDCmgeCBkpAyMMNKcQB9Ou42t8cXDvVS8Xm/R7D9Ahnq1pT mBntrEsQgTS9QpdwN4vSOjqj3mCozDZ+Wvo3AKPZm15RZKxw8t7Wyh4yFydo/7jxnOWbnd98ptr 6YhCDMvtsS+XS9q2LsdAT35BkumCjhQCO3RSIbKZrQAGOScvfY2Ziig1G0gdw0AraZfHA24MlSB smsf52MgKNVBInFXSwUqs5XqL0B5N4YAF0vBZly5xuKmCv/ffGAvpSvbDW8YZOXo7g== X-Received: by 2002:a5d:6d0c:0:b0:38a:888c:676f with SMTP id ffacd0b85a97d-38c5194a531mr10995878f8f.15.1738357550885; Fri, 31 Jan 2025 13:05:50 -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-38c5c12247esm5765768f8f.53.2025.01.31.13.05.50 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:05:50 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 06/36] hw/mips/loongson3_bootp: Include missing headers Date: Fri, 31 Jan 2025 22:04:49 +0100 Message-ID: <20250131210520.85874-7-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::431; envelope-from=philmd@linaro.org; helo=mail-wr1-x431.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 MemMapEntry is declared in "exec/hwaddr.h", cpu_to_le32() in "qemu/bswap.h". These headers are indirectly included via "cpu.h". Include them explicitly in order to avoid when removing "cpu.h": In file included from ../../hw/mips/loongson3_bootp.c:27: hw/mips/loongson3_bootp.h:234:14: error: unknown type name 'MemMapEntry' 234 | extern const MemMapEntry virt_memmap[]; | ^ hw/mips/loongson3_bootp.c:33:18: error: call to undeclared function 'cpu_to_le32'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 33 | c->cputype = cpu_to_le32(Loongson_3A); | ^ Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250115232952.31166-6-philmd@linaro.org> --- hw/mips/loongson3_bootp.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/mips/loongson3_bootp.c b/hw/mips/loongson3_bootp.c index b97b81903b7..712439c2575 100644 --- a/hw/mips/loongson3_bootp.c +++ b/hw/mips/loongson3_bootp.c @@ -21,6 +21,8 @@ #include "qemu/osdep.h" #include "qemu/units.h" #include "qemu/cutils.h" +#include "qemu/bswap.h" +#include "exec/hwaddr.h" #include "cpu.h" #include "hw/boards.h" #include "hw/mips/loongson3_bootp.h" From patchwork Fri Jan 31 21:04:50 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: 861017 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929057wrr; Fri, 31 Jan 2025 13:07:15 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCW2MQ4WkIYc9uaUpuB4MtmCNFSru5EtzqQz1pOZbgPHwOYmZTAxMiE0SWWiUTGmhVL8leGpOw==@linaro.org X-Google-Smtp-Source: AGHT+IHJyY8ImkarNoBqUF63rLQhxuevVAZyrZomOSNexXlZWjQ1S5/5GSY6H7pHtu7ggbv7zXrP X-Received: by 2002:a05:6102:2c0f:b0:4b2:bc6b:c845 with SMTP id ada2fe7eead31-4b9a4f0da6emr11680161137.6.1738357635255; Fri, 31 Jan 2025 13:07:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357635; cv=none; d=google.com; s=arc-20240605; b=BhPiPGib0tT1N+1Y90tXMaPYhRW9y38vu15wL41NpyW3gSa7BvRHSYSW9R057QCNWp cm60DN1n2E5odipU72aGEv8Pxh+Hhs/1cEFsdpTqdt2GZ5akiMWYej5bpxznKOk93m99 Y+aieHgem4Jfercgpb5TAmgVABSGUbAZmieokh5NTFVmN3i9Z9fYpiMfbABLCbS54VX2 kRUtUrsoFr94jo2gd6uVCbC0fuIA3eQjyPtJ1ETfSIOU4ihlR9MnszIQFtDkP6Lix4+I Zl0cjw6nKZX6MTpfc5/Z/+4vhgjwO8FQ8BEjlxVtdOCoLPfiCDnnyCLMjPQm9HQRmIhb iwRQ== 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=V8kACQ9Ed0Np5IQUg9PPlvJM41JRwzX7hPUIJ5MOFlI=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=XfPyGeY2vSkVUAGjqbe/Z6dUecWQPme0kkjbyl3/KCf1vcdbKPy4Dk+vla3UNAu+5s 4paz5j860/4HjrNZBFxREYABCg1ELSA0kBDZQpjHzMmw23T+9MXgCn45doXgChz6Gaid 6yzal8PV1bWrmdS6YdP4MzKsCSeUlBZoEbYK3A1/mxuC9MFPE4AT1E+QymmDvfn//1ER HnZeu7zbJ6184Vqq2w4VtJLtr0kIj7NsOfKfLmol3YEGvaHWvkA6g2vbCd07b7DOnbma y5oM9iZtJF842MY45j3Gg8Jew4YLmb3eMjWZxc1zh7UeUZwqlF0uQpJ2h1x/cZyNChWK 9EEw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ERV8tDU+; 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 a1e0cc1a2514c-86694172175si1024559241.123.2025.01.31.13.07.15 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:07: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=ERV8tDU+; 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 1tdyDB-00064c-12; Fri, 31 Jan 2025 16:06:01 -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 1tdyD9-00064R-DD for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:59 -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 1tdyD7-0007oj-JA for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:05:59 -0500 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-43622267b2eso24321195e9.0 for ; Fri, 31 Jan 2025 13:05:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357555; x=1738962355; 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=V8kACQ9Ed0Np5IQUg9PPlvJM41JRwzX7hPUIJ5MOFlI=; b=ERV8tDU+Y6M9OqKrGhXBihwEUlM59F1Qk9eLlg92u8DRO2tF9hl8d0id69FSHHEgUC GmWe20lfW++WdbM5JBJi5ho6gi+4uFthrMyW28kC5jefKOzVyt0W2Aasjd3J21SDVuBe 9rw3S3SFW6NZI+oeywsMdYRq7893qtnmSi9U4rHoHVJFGYJ88kQdNoL7ojwusvSldOF8 Pc+rHjEeA1w+BqqzjksWg/tUUe/xo4uvklydc3FHaAOFpDj4lCMBAPlcwfy4/HFMeSb4 iBrc13Gm7A2bEHB2lNN27P3WhpCjsWC2TIo0yzwkTQugXvf0cIZ9mrl1TTb4JMSuEghe hfKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357555; x=1738962355; 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=V8kACQ9Ed0Np5IQUg9PPlvJM41JRwzX7hPUIJ5MOFlI=; b=b5VxVLTaLAQ/UawDBtpdi6QkMmz1kYY2ML4S2ppb5aRDhC9pXrbnkaYJ73Iua18NoQ LLMOPO+652F39UZQ44vLFAQxvsb3LFDGEkWWCRsPPZG8HhOsQnJVQe3zoJLfQInTA5eC /WjjAEPAHlbufobzHP6ehqJF7e4HcKBMGPymwcwDzWDpcic5fEq854HJ0lpmsR/iz2mX ifpJ23WUpZpaHmmffK8CUwO/uLhLJ7v9x1kQ3n5ltVgq2SvStBDgDGPx60a46KG+OlaU MWX0HQKYw4kIVUgzPBaosmcvwrN4ovRtxGtQ9Ica0ns+51SWdDtfCHQVogmhrrcstrZH WzUg== X-Gm-Message-State: AOJu0YwrgMwA89hYW4Za1loS/sUv4kPsqZ3VVCvr19EYGV812XfLmOMP uJK0q1/n8t6VExxIY91lJ7gJjWErFVLCzxFKyXr/w9OUYiZq3ZU+8JcbiG5WpxLo0Ntg07zAwbj dO3w= X-Gm-Gg: ASbGncsaawRM+ZluLQhetQVaz0jaT6lMAJrFjM4WIi+zgrWYYlgTMd+S0DLLOzQ6KkZ aYTQHd3haFFvv4LyLvh0J+jS6Cl/eZVsdzZd92XO/muVnwmFxPGN+vWFBm/tVNPV5Px0gTeiNEf 2IuT6TqybNBUR231oyOcC+X/qESVBSVpHRSi92RV95L35qbBLuIk4CTv0s66Eu9xUpJkhq0jjeL R4zUbKRMkS7aciD+Y7YzFJByj2knacYQv6xZZ27vfcRDiaEEcx5Ga01pkitzwQVxjlkXPA+qTyg XYAwHWtS5+WBAuKlwGI3J8Ir7g4Y0G8Nri5oUYtbGHX25e/MbUoJNFXade+tEeCesA== X-Received: by 2002:a05:600c:190e:b0:438:d9ae:337b with SMTP id 5b1f17b1804b1-438dc3ca414mr117270525e9.17.1738357555538; Fri, 31 Jan 2025 13:05:55 -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-38c5c1cf555sm5650545f8f.97.2025.01.31.13.05.54 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:05:55 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 07/36] hw/mips/loongson3: Propagate cpu_count to init_loongson_params() Date: Fri, 31 Jan 2025 22:04:50 +0100 Message-ID: <20250131210520.85874-8-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 Propagate the %cpu_count from the machine file, allowing to remove the "hw/boards.h" dependency (which is machine specific) from loongson3_bootp. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250115232952.31166-7-philmd@linaro.org> --- hw/mips/loongson3_bootp.h | 1 + hw/mips/loongson3_bootp.c | 11 ++++++----- hw/mips/loongson3_virt.c | 1 + 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/hw/mips/loongson3_bootp.h b/hw/mips/loongson3_bootp.h index 9091265df7f..ee6340e42c1 100644 --- a/hw/mips/loongson3_bootp.h +++ b/hw/mips/loongson3_bootp.h @@ -233,6 +233,7 @@ enum { extern const MemMapEntry virt_memmap[]; void init_loongson_params(struct loongson_params *lp, void *p, + uint32_t cpu_count, uint64_t cpu_freq, uint64_t ram_size); void init_reset_system(struct efi_reset_system_t *reset); diff --git a/hw/mips/loongson3_bootp.c b/hw/mips/loongson3_bootp.c index 712439c2575..91b58a71a68 100644 --- a/hw/mips/loongson3_bootp.c +++ b/hw/mips/loongson3_bootp.c @@ -24,10 +24,10 @@ #include "qemu/bswap.h" #include "exec/hwaddr.h" #include "cpu.h" -#include "hw/boards.h" #include "hw/mips/loongson3_bootp.h" -static void init_cpu_info(void *g_cpuinfo, uint64_t cpu_freq) +static void init_cpu_info(void *g_cpuinfo, uint32_t cpu_count, + uint64_t cpu_freq) { struct efi_cpuinfo_loongson *c = g_cpuinfo; @@ -40,8 +40,8 @@ static void init_cpu_info(void *g_cpuinfo, uint64_t cpu_freq) } c->cpu_startup_core_id = cpu_to_le16(0); - c->nr_cpus = cpu_to_le32(current_machine->smp.cpus); - c->total_node = cpu_to_le32(DIV_ROUND_UP(current_machine->smp.cpus, + c->nr_cpus = cpu_to_le32(cpu_count); + c->total_node = cpu_to_le32(DIV_ROUND_UP(cpu_count, LOONGSON3_CORE_PER_NODE)); } @@ -112,9 +112,10 @@ static void init_special_info(void *g_special) } void init_loongson_params(struct loongson_params *lp, void *p, + uint32_t cpu_count, uint64_t cpu_freq, uint64_t ram_size) { - init_cpu_info(p, cpu_freq); + init_cpu_info(p, cpu_count, cpu_freq); lp->cpu_offset = cpu_to_le64((uintptr_t)p - (uintptr_t)lp); p += ROUND_UP(sizeof(struct efi_cpuinfo_loongson), 64); diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c index 9f6fdd0f287..eb2a6a248d8 100644 --- a/hw/mips/loongson3_virt.c +++ b/hw/mips/loongson3_virt.c @@ -185,6 +185,7 @@ static void init_boot_param(void) init_reset_system(&(bp->reset_system)); p += ROUND_UP(sizeof(struct boot_params), 64); init_loongson_params(&(bp->efi.smbios.lp), p, + current_machine->smp.cpus, loaderparams.cpu_freq, loaderparams.ram_size); rom_add_blob_fixed("params_rom", bp, From patchwork Fri Jan 31 21:04:51 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: 861015 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp928971wrr; Fri, 31 Jan 2025 13:07:02 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCW9dcpuktZ+SIWQuV1MzATMuUGkc6cOBegv3B3T6eYNxXlu/Cv3uaXjZ98o8VVJSst1fVzXvQ==@linaro.org X-Google-Smtp-Source: AGHT+IEJ8HjrKGLFE/JgR5QSsKkfcRHbBUtN2MTajsjqgLplT6SfObuBIjCMyCPMEg6N371RIa4z X-Received: by 2002:a05:6102:148e:b0:4af:f3bd:51cd with SMTP id ada2fe7eead31-4b9a51ecee6mr11578107137.16.1738357622609; Fri, 31 Jan 2025 13:07:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357622; cv=none; d=google.com; s=arc-20240605; b=WdCf434tHmnHbYqTsEubUrKsxynN1u64FSSe5wcVkT+Dl2VvKF0m5yF+BJ1/M9cTy0 2xAYUN8Q7/yQadRO2ASP/0Z5g5c4D3zauqVS2jzz2WXug3L5dVYw8/9v2uvandxY59zh RtXKPzLKQ4NlfkUxM2EvdYDbDGxfUef4Tzf0KNOOXEMD/iJJD58UKns/l4PVWC+Y3mPi UNlvxOQLO7k2AWbAc1YS2Us+ejPLb5xHj6qAdGT7JCI5AW+e/D7eRUp3KDc9scoislfc 0AdZRbuCZFCwc5t4ZcfaaXUsV+unGxVYmSXNQ92lqxqgF4R3iTVD02aAmF1B3iaumCq5 1mWw== 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=koaWsx2CJvSpNwxzge4pdAu0nar8Q5iI+ZLR1t56ap8=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=ZdbDMidcEpw4d/WXstFTlZMP0SCoe46TXugsi+u16943LMaIt3/ZNZ4wfQjqrrcIHu cmz6eH+QSZx08TVxoWmc9uOWZSQ6EqJn7P6olLVfqafFXyGbrbXbGO39Q5sFZmNVBSp3 8loZUYZGC8Dz9Q0VUnvQCso9UIzZ5NVGzIdLTlPfchM1xz7HRXmPIQ/VJSASBuz0V3ZE 8hxnNVpTxnTBfK6s9YPxmSFmLpQ/xBgsjPk4KaeuTImK+jr8TiU3UG1CkwigwKDB6jM9 I57LcCuYINZm5AYQQ6h3eXXAQMjEHmoR/8yRGRnKI0E3nrVImZDfTioGgv7u4Pe50+RW 2Ftw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=SrblB4EY; 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 ada2fe7eead31-4b9baa68b47si981025137.84.2025.01.31.13.07.02 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:07:02 -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=SrblB4EY; 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 1tdyDI-00065g-P6; Fri, 31 Jan 2025 16:06:08 -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 1tdyDG-000655-IG for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:06 -0500 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyDC-0007pC-LC for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:04 -0500 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-38a8b35e168so1527428f8f.1 for ; Fri, 31 Jan 2025 13:06:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357561; x=1738962361; 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=koaWsx2CJvSpNwxzge4pdAu0nar8Q5iI+ZLR1t56ap8=; b=SrblB4EY7fBPCMgNtT5od37+ruI8TsvttfC3dIC7XkbRqhxzong+bp4VvwrL3d0HG5 EZLO/9N/zXKXSnch6KJPHokehSr4IUf9NtrqbRScPc4BUAHRjj+Y4duVYBr1qSpQsanH Tu6cb57ZcSUa9bhWjn+PzpCRyWitvBp6Mpbnnrt5yUuzYTFR3o6rKGPXOZtcg1dvoYkO zYBvgCv2abxsojyHKR0muHRzKPGNX2dEz/n5C5E2ejj4siuOHWlDHNdNKcP1Beyj4IEv GyrsvYTH+/TMmj9WwCoXWHjtd3q1FBXbpH0UMUd21y5WqvGJU5VU9ls3PJWgVkiRECjq 2taw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357561; x=1738962361; 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=koaWsx2CJvSpNwxzge4pdAu0nar8Q5iI+ZLR1t56ap8=; b=ATfZqTWffyHDxrQQEb/6Tdyh5qGdMCDGGwe4CB7DbNGss0xenObN8HsST6uhmZ1sEo EcFC6Iw8Ef5Ks6ihYVWuzRGNxX7x7KitvbHLirMd+1QngtRc6DgyxDksHkPPlkWIm+vh umifAqWeaJOLpoz1wduOtHeBEhHqTn5r+9NZ08k94UjEWOaGEb5YBa9neZDJ/qpWAsZJ elQaf35YUBbreNCoa5xMVM3SL3Ieoh1KSlDDdeXzUu/d3Yri6NdJeZKo6DGw4mo0RlF3 tzijsTIZJTmy4KtSn0v0SgdU1Ytu4nsCuQ1ZEcABmvxmIsmo2fTR+N7ekzBrMeOf6mB5 ynjA== X-Gm-Message-State: AOJu0YyibR6aidNH4/mogXhGaWL8U5veU7YzWQAZycGg4otDFQqnY9Rs RScMbLl9j5Uoo1kg1ZKYPRQMnNMOkQs0BFdllxvhuNXJu+XHevX38+9z/HL3vWWsGkXIqrbquGu /L/M= X-Gm-Gg: ASbGncsuXMrLjrsD0lar5zD+CUdRjYEYPRCTeXKMcOY74N3XDbyz6Ly+iM5HbTfI1EF RkLwERvV6ZoEIC9ob53IVvZMiF8pOKbv8/flpRB1TvboIDiiyeyO5sMqL38i+R9EJa2emQyeP+n un1Defq3TKELxDFo2MXXR2f3zNb4sIuPHrXKMt/nksw44UldP+NpC14TxGWvw8b7gmTEetpy1kw DKE50ByYRtKR+IdBBBz/B5F7WCktlgIQ20hRwfLrUzm59M1qaLlZe+9NGMW02BN5rGEXnjevGZk fm1ucRr2sTUdmfZZ31EliPpFJwx9+Zo5jUeT6yt3d5tSY3pdBld4KaViLworQP2xDQ== X-Received: by 2002:a05:6000:1564:b0:38a:88ac:ee69 with SMTP id ffacd0b85a97d-38c60f2638dmr3770270f8f.13.1738357560865; Fri, 31 Jan 2025 13:06:00 -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-438dcc265c0sm101799615e9.10.2025.01.31.13.05.59 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:00 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 08/36] hw/mips/loongson3_virt: Propagate cpu_count to init_boot_param() Date: Fri, 31 Jan 2025 22:04:51 +0100 Message-ID: <20250131210520.85874-9-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::431; envelope-from=philmd@linaro.org; helo=mail-wr1-x431.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 Remove one use of the 'current_machine' global. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250115232952.31166-8-philmd@linaro.org> --- hw/mips/loongson3_virt.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c index eb2a6a248d8..5fe5bc6fc03 100644 --- a/hw/mips/loongson3_virt.c +++ b/hw/mips/loongson3_virt.c @@ -173,7 +173,7 @@ static uint64_t get_cpu_freq_hz(const MIPSCPU *cpu) return DEF_LOONGSON3_FREQ; } -static void init_boot_param(void) +static void init_boot_param(unsigned cpu_count) { static void *p; struct boot_params *bp; @@ -184,8 +184,7 @@ static void init_boot_param(void) bp->efi.smbios.vers = cpu_to_le16(1); init_reset_system(&(bp->reset_system)); p += ROUND_UP(sizeof(struct boot_params), 64); - init_loongson_params(&(bp->efi.smbios.lp), p, - current_machine->smp.cpus, + init_loongson_params(&(bp->efi.smbios.lp), p, cpu_count, loaderparams.cpu_freq, loaderparams.ram_size); rom_add_blob_fixed("params_rom", bp, @@ -643,7 +642,7 @@ static void mips_loongson3_virt_init(MachineState *machine) loaderparams.kernel_entry = load_kernel(&cpu->env); init_boot_rom(); - init_boot_param(); + init_boot_param(machine->smp.cpus); } else { filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, machine->firmware ?: LOONGSON3_BIOSNAME); From patchwork Fri Jan 31 21:04:52 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: 861031 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930132wrr; Fri, 31 Jan 2025 13:09:53 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUaPzpv9mQMs5objk8S4rlKoVqIeOgogwO6L47HkXBfBKrikLwxAa0tRMfXBfMAsQGpJcelIQ==@linaro.org X-Google-Smtp-Source: AGHT+IFdQE9bhlVkrPZgfYup7hQxj7fLSnT9naKc8WVe879b9YHlZKXlDqWTHwtSAl1TS4abpYnL X-Received: by 2002:a05:620a:bc3:b0:7b6:d089:2757 with SMTP id af79cd13be357-7bffcd735e1mr1846066685a.35.1738357793621; Fri, 31 Jan 2025 13:09:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357793; cv=none; d=google.com; s=arc-20240605; b=Zel+QpQVBwYEVxio2t2q5Hi+hBIIaNKZezhyExst5B7G5hbNb2tvUsSutWUQ+xv5Ol JhnEqaADszga7cvza1TKDbL6Pwyb4JrhOwj2b8o7aieWn41e4oQLTzkdS9xcNHfmYIs1 mm0vpS+znqWZ45awww21MGtNU0d4BnoYddJMAKdKjBeyVrT3E6If6xZYc2YOy/rfQgow t3ZD2tsAO8/MdnXWPIcJwVj48iRNEijzRc2+N81Ju/RHX5y7bysGT7fWx5OWUVD0zlrB NVRdQbod9YhMFnWJJN3DUOTlYqiry3RJJLZ5jczD1x5k+rBULYFu+s9cAFHhHwCTN+Di gK0g== 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=jgIad0rTApohRLqLlD+El5YcpAOLn2SiJIln+lUq5GE=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=k2Y8GEE9FLrW1+y//Urb+8BNGhwQoQ6gITbeC3zvyyfyKK108mfjjJgaC+AHBc/9Vi 8kp6Bl6oN/kkAFtCrfmpfPUGFc5tiZeTQYaEsHIsvwtUJhakhaRH+9yx2DhngKdXI2vl d2oj7hlmS8GpsdAGS1XWIoTfoqDBCljmRYNMXvuFuHDQrcZSiiDsvqBuIfI9HW+4g4wn yXO4zN4K1RY+M2YemJBbS+I5yt0dCM1QhhqbmbvtJf2rHwnkNkTG2bkAYp4wxsShzuwn yik8LVs8/nY/yAM1nSRdCwE1QhXORAIwWPbj4LEnXZ7STisSftgoqsQ4/g8QUZzQXMCG O11w==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=U2QqBmBv; 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-7c00a90ee75si458578485a.435.2025.01.31.13.09.53 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09: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=U2QqBmBv; 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 1tdyDL-00066I-6O; Fri, 31 Jan 2025 16:06:11 -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 1tdyDI-00065x-Sf for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:09 -0500 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyDH-0007pX-DS for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:08 -0500 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-43618283d48so18724105e9.1 for ; Fri, 31 Jan 2025 13:06:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357565; x=1738962365; 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=jgIad0rTApohRLqLlD+El5YcpAOLn2SiJIln+lUq5GE=; b=U2QqBmBvMU1HdhH6qF4RUJ23yJjm647sCozDMekwUe4YSWBKMnuO+obrQlaVyfSQ8j AoMuNqUdWAFFYyTstHE90Xk/2nZsuq+sVAhE8w5Pa0/uBkJZBAQ9FZu6zC0AJKjkK/yh Y4SNbBlD+KE8KkHSL6hHS+PftbMbfDhxcXUWdYMFFmEc4Nr046otL8Ucr0bE2B4z5bA1 lxWteaHISe/Decyr7m/SOXEkgReE0JeKT4++m/OSgEGNCcDu5xGI66uLIgUdb1yHno+F +/CSrObX8d8SgNPwW4ydi86ml0k1rfQHtIgX5ClgLCq33h2V1AA393aSfYn33mb7E0wh zFdw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357565; x=1738962365; 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=jgIad0rTApohRLqLlD+El5YcpAOLn2SiJIln+lUq5GE=; b=trc2f38TxEDgizW9/5aTWrU45XyLbJzGdjC5QKwphhGR09r91ygwDS7tONa8ukEoVv 5oCmblvWJggCVbWRRY54ZXGycVjIaNhWScPmzszAcLxKyrMdZhUUHMTGOXTHVQiTCe24 uwlm8oC8zGUXGB6xx1tFy4pxezOxHKDwg3LBrZ3f7JF8q8qumgeIsllg+EfrDRQofHzf rdvr0BtobHelTczGHRlBloUltwGZ0S4bf4GeIlJkeDBDHBXHXVefVV5oNMiThcpBeIUL CjbcxCR3hjo3c+dZdfe19Y6CFIqTrgJb4UHP/b/0KPowWpXXP08wsBCZMFaMBUyt7f9c HM2Q== X-Gm-Message-State: AOJu0Yw99Z0QgboJj15piBvcgnt+WGzKcG9pOGTYQqGAQt42H/bYC4iU tJswfD/TTcBPck5Vw3GUzdWyaeGunvQIc8XpUhLvtbDTBqL95PuYodsWr0eZ9rSGllzdwikTfF0 uyCA= X-Gm-Gg: ASbGnctKwULGnwLRkkmvs1eZpoQJyfSht1m1jRXlALNm8Y4TO+h5N4Jv6mKYWHqfWfu XUOLQ2Wd17ViUvhVqLcrJ/Mgda4dNSVmxUgROuGxGFGNZpoLyafM0BZwDSzwcAozSzFn2K4KV/6 qMNA5P8BoxA0XUerY3aYrbCyUa9ZO7SghEUe7oQ5Y+ZcsFQau7hsQ0HUtnB+aR6/UtaYDEhAbaP buYARuuHSxC84GeHHTj3Q/ScE6S5sZLrx7xRE0rl5Kezk3SHd8gKcDZ3lr0Vg9twuVgtezNtfCM UHvfmGxImOjn40eCyRoqEox/VTy+bFjMoxLXKUKfEzZHdDkiwOnFp9q4FO3bDdwiqA== X-Received: by 2002:a05:600c:3511:b0:434:f3a1:b214 with SMTP id 5b1f17b1804b1-438dc41ef52mr96164695e9.28.1738357565539; Fri, 31 Jan 2025 13:06:05 -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-38c5c13a0efsm5658460f8f.60.2025.01.31.13.06.04 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:05 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 09/36] hw/mips/loongson3_bootp: Propagate processor_id to init_cpu_info() Date: Fri, 31 Jan 2025 22:04:52 +0100 Message-ID: <20250131210520.85874-10-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@linaro.org; helo=mail-wm1-x332.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250115232952.31166-9-philmd@linaro.org> --- hw/mips/loongson3_bootp.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/mips/loongson3_bootp.c b/hw/mips/loongson3_bootp.c index 91b58a71a68..1aab26df69e 100644 --- a/hw/mips/loongson3_bootp.c +++ b/hw/mips/loongson3_bootp.c @@ -27,12 +27,12 @@ #include "hw/mips/loongson3_bootp.h" static void init_cpu_info(void *g_cpuinfo, uint32_t cpu_count, - uint64_t cpu_freq) + uint32_t processor_id, uint64_t cpu_freq) { struct efi_cpuinfo_loongson *c = g_cpuinfo; c->cputype = cpu_to_le32(Loongson_3A); - c->processor_id = cpu_to_le32(MIPS_CPU(first_cpu)->env.CP0_PRid); + c->processor_id = cpu_to_le32(processor_id); if (cpu_freq > UINT_MAX) { c->cpu_clock_freq = cpu_to_le32(UINT_MAX); } else { @@ -115,7 +115,7 @@ void init_loongson_params(struct loongson_params *lp, void *p, uint32_t cpu_count, uint64_t cpu_freq, uint64_t ram_size) { - init_cpu_info(p, cpu_count, cpu_freq); + init_cpu_info(p, MIPS_CPU(first_cpu)->env.CP0_PRid, cpu_count, cpu_freq); lp->cpu_offset = cpu_to_le64((uintptr_t)p - (uintptr_t)lp); p += ROUND_UP(sizeof(struct efi_cpuinfo_loongson), 64); From patchwork Fri Jan 31 21:04:53 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: 861041 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930717wrr; Fri, 31 Jan 2025 13:11:15 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCU/WMEKfKC6wlc7PdOKi6y0sZPYOM5MoKG+HvXg42oAdECRng0pQB1p0p2GYJQq1zW1kMVYWQ==@linaro.org X-Google-Smtp-Source: AGHT+IFdOGzIJWx+b/EY3wUdVq9ZPRYFqI/A30Ui4TLpINXwHiX7gSouT+LLP0NwC3Qup2X1HbLB X-Received: by 2002:a05:620a:6081:b0:7b6:f1be:4f68 with SMTP id af79cd13be357-7bffcda57femr2074281985a.46.1738357875489; Fri, 31 Jan 2025 13:11:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357875; cv=none; d=google.com; s=arc-20240605; b=Qxc2gtmFemM7AkqtjvPF7F/ONx16MXBnR42syjzDDR0AAERaCFbdD09UpaOHoU4oq8 JvrfWSdUrcPm/sG0ylJytDSFM9HiNIi5CYocXo9nTleZ/Bh6xh/hbZHuanS05VhykuPA YBhiKeIKMismt6maZ6TOs0J6f40M6FoLQuhsgtwOJswH0uwjIAC4/GHAnS95k8Exartx gUWmBgzgk2yP+k8XuMm0lprl2Qv2v1v53U1UiEwUYmIehnlkBQneebKj9xbQcO/T+4WH HqaNe8ZgVEB/zEme3X7b8XMruBOKA/d84bcfpCTzQvxVcq7Lg2Do2TjMtxJT4iAyO2pc 4gxg== 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=fXLlGZJlx/2RsYn2bfi3IVqSbsLVgKErZZDglGqjRI8=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=Narr3wXmcu8/RgK/Yosr5AeuqRGy8pZtMxxGmLbj4yVd7KP/wFhVWwdf7Dl/v2wuwG swSoDGKPLel5oReRetsbBHYUjVOz6QNPZ+majO4NSaa3Ur9buLn8z4hH6hpi5EiSk18i T4zfxgr0PLm323ep75XP/Rf2mvzQq9AvAx4hf4FCTmD9pdOt+KVt0opZH10QuixcPnHe gubDSjV5w4m4DQMEJFnX+x+09Us5S6ztklVh/ME4vio4IjvuXFkBS8BqPMrCV3acUkF6 5/+EYSP2BQ39HCodtJai7vkhEcAKobEjXFVAFJ3MaO/oG1c00912OxvrqeraHVAJysTr So3Q==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=w4zVlrGt; 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-7c00a904023si480779585a.223.2025.01.31.13.11.15 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:11: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=w4zVlrGt; 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 1tdyDP-0006Oj-Pa; Fri, 31 Jan 2025 16:06:15 -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 1tdyDN-0006DW-Oo for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:13 -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 1tdyDM-0007qH-2H for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:13 -0500 Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-38a25d4b9d4so1302711f8f.0 for ; Fri, 31 Jan 2025 13:06:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357570; x=1738962370; 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=fXLlGZJlx/2RsYn2bfi3IVqSbsLVgKErZZDglGqjRI8=; b=w4zVlrGt7ZtYHo2BXi5LpieOi257DlIwIwRS5gsX9vbVXPCjQcKisyrR5XMo/De8AV NxQn76y3sNSiu/YM4a+z6eOcP6xtlkxUmLj2MvYJpsSXL3rjnS7IUMlPh26ViWQykJZK yQHmPSKpvBkGK+UT72mpQ1j2wRdOo/hy3ZgxaUeXKL3Lleoz1eeaC9UY9kO3oNdgPiF2 9UyC9QRGoK5CZq72ac581MlMgXa7Gc5Ufi8wG1pWQnVJCDSMeM9oTMqGTGf2+kKFYCyr CEJWOVJ/12KumVhmMr+GgaHr0D0C6XcQRhJTWGuIOIREeunLqt+c6kbqcUiMWjK+xO9d 7lOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357570; x=1738962370; 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=fXLlGZJlx/2RsYn2bfi3IVqSbsLVgKErZZDglGqjRI8=; b=K6EUgqj/DIvcmdxLItFuUBKALNEJw/MtEupNq+edoJuo6sNpgwM2b52YrgguTZ1eow 85GnF0EsywC0o5mCAdRd2NRqUIFLna+Nm0pL3ZYXKAqahKlq7xLaQaEg7Lm2+dnMJqka uQn7bfOdRMMNoXmLb5VBeJXsrZru9PrWpt9cvUCKwKaI2mH6n5VVlHr0YdcwPYMB8rtv 473e+ctyWTh4ewGX15VJCO9xmJ+5KO0iGDv9P4DlEas5DLFt4N/OvYWosvI+XHdOXiyC pNcqtSKI2BYTbsgKstHHtKGZi6r1sNm/y5IfowG2AHMm6M1vtA5Pk9P4U+4oCGkS2XKD MkAQ== X-Gm-Message-State: AOJu0Yya0q7NB1cji6/DNE8VuPgnUTnj0wx7ksdUAAn3pvq6VLUuuHdr l7jOSs/2kQhe1Iwa05dCn20FMRfENt8WBwx+KU1QfA7RNPM/eYot1MpIBpRTkxGa1AUa1E3k2AC 7JXQ= X-Gm-Gg: ASbGnct+v89kYbWIpJ/iNQeX1GTcdzr+W06zKIA4E/P2DlsGV+YofwwFUSXgkn1Qi6l T2HYAc6FAN9znuNTQnyCEa8cUg8hOK/R71A7Hott/JAXgGipEU6ds/iXL5f7TlbpfyEVV8JTPVa eca4Ej4NYtQli8CBYUDEgXGfWN6fu3svj2HGF9XQmuPnm16IPRH/ZqdOVC7OZHs+VJOdARORLxC 8YuRPpPxT3MRS3Ep9t5oh/JJp+Jzi7c5d4dq+al4CM9FL351Qte4+9L6ogTchR7rPpclw0nMYJI B955rG860aPYH6rO3K80TPW0hZHdLTbCjCyF2waFl3PQeuj2/TzgHzf0JBr+CSxgQA== X-Received: by 2002:a05:6000:1f87:b0:38a:88bc:ace1 with SMTP id ffacd0b85a97d-38c520965abmr10893908f8f.34.1738357570172; Fri, 31 Jan 2025 13:06:10 -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-38c5c122489sm5772540f8f.52.2025.01.31.13.06.09 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:09 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 10/36] hw/mips/loongson3_virt: Propagate processor_id to init_loongson_params() Date: Fri, 31 Jan 2025 22:04:53 +0100 Message-ID: <20250131210520.85874-11-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 Remove one &first_cpu use in hw/mips/loongson3_bootp.c. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250115232952.31166-10-philmd@linaro.org> --- hw/mips/loongson3_bootp.h | 2 +- hw/mips/loongson3_bootp.c | 5 ++--- hw/mips/loongson3_virt.c | 1 + 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/hw/mips/loongson3_bootp.h b/hw/mips/loongson3_bootp.h index ee6340e42c1..9dc325a8557 100644 --- a/hw/mips/loongson3_bootp.h +++ b/hw/mips/loongson3_bootp.h @@ -233,7 +233,7 @@ enum { extern const MemMapEntry virt_memmap[]; void init_loongson_params(struct loongson_params *lp, void *p, - uint32_t cpu_count, + uint32_t cpu_count, uint32_t processor_id, uint64_t cpu_freq, uint64_t ram_size); void init_reset_system(struct efi_reset_system_t *reset); diff --git a/hw/mips/loongson3_bootp.c b/hw/mips/loongson3_bootp.c index 1aab26df69e..67812666c5b 100644 --- a/hw/mips/loongson3_bootp.c +++ b/hw/mips/loongson3_bootp.c @@ -23,7 +23,6 @@ #include "qemu/cutils.h" #include "qemu/bswap.h" #include "exec/hwaddr.h" -#include "cpu.h" #include "hw/mips/loongson3_bootp.h" static void init_cpu_info(void *g_cpuinfo, uint32_t cpu_count, @@ -112,10 +111,10 @@ static void init_special_info(void *g_special) } void init_loongson_params(struct loongson_params *lp, void *p, - uint32_t cpu_count, + uint32_t cpu_count, uint32_t processor_id, uint64_t cpu_freq, uint64_t ram_size) { - init_cpu_info(p, MIPS_CPU(first_cpu)->env.CP0_PRid, cpu_count, cpu_freq); + init_cpu_info(p, cpu_count, processor_id, cpu_freq); lp->cpu_offset = cpu_to_le64((uintptr_t)p - (uintptr_t)lp); p += ROUND_UP(sizeof(struct efi_cpuinfo_loongson), 64); diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c index 5fe5bc6fc03..ee71fe9e9b5 100644 --- a/hw/mips/loongson3_virt.c +++ b/hw/mips/loongson3_virt.c @@ -185,6 +185,7 @@ static void init_boot_param(unsigned cpu_count) init_reset_system(&(bp->reset_system)); p += ROUND_UP(sizeof(struct boot_params), 64); init_loongson_params(&(bp->efi.smbios.lp), p, cpu_count, + MIPS_CPU(first_cpu)->env.CP0_PRid, loaderparams.cpu_freq, loaderparams.ram_size); rom_add_blob_fixed("params_rom", bp, From patchwork Fri Jan 31 21:04:54 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: 861018 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929157wrr; Fri, 31 Jan 2025 13:07:31 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCVKQg18/NOYJdNMIsakXU7YWIDorYajOhDHfbGZSvkSbY+ZA2sWw+EC8CCscULezYpHGodFFQ==@linaro.org X-Google-Smtp-Source: AGHT+IE22wGCIR7YvskEKLj5conX1HHNiWPlPFVPddqLftHUSEGKAgbqKTLMViZLY0AsayaPMYXp X-Received: by 2002:a05:620a:280d:b0:7b6:c2bf:3eeb with SMTP id af79cd13be357-7bffcc36e1fmr1451764885a.0.1738357651356; Fri, 31 Jan 2025 13:07:31 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357651; cv=none; d=google.com; s=arc-20240605; b=dGtonVf6e+uCFWY/lEZNlT+MWhUOWAw/+0OEQLU8AxcxoMRHjSPIzU/24JK21cwJkE xnKokFdRLGZEIRWBeu/3Xk+1C0l7tBtE4R/n3OqWclc4Tl6yJfrOwYjdpXZPEwniENg3 hJAZ0fI9bOFVYF3E54RrDv8YGH/0hG1u25Ox/wBeNCSTkumuqJIGeyCB1Tn7POsGrlQ5 Y3knypoF8lQwsJtyjkWLf0KYLxoQa4cyVWVsKX9Q+7L/QrhHHoVo5brlHZWbVd5K4C83 ke/mZZ/KFi2HkfoolsP+7UzzkU3NnZAiQitt2Qgm+MmlpashWriNkGbsm7KcyGVpq9vg 5aNQ== 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=RhExu0CcIw5AXAeV2nSvZookI/39bFtqH0Z7knUSKIU=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=ez2yXzBl4SI81oYU0xuSZ1AUbjw/B0OEvXNnZDvjbbxCiB2UpbEb4Tl9k58w/X3+3l cMpMey9kPQHUUqdaRAmZPPmo76BUy0Ha0HEwBN9NGCZOYSLolICnjnvhCw70gPuxDRM1 kqMxZefpVLhjKbeEY99iR2pIkcd6doN89ayi6GOb4lOuuawsudaPGoznqFe0r4cz5Mmc aTAIdYr5X9YPkoy7jMBxvWAPytghbG8eqcnx3qmipaih76M6S09m2bAMtlOBQkEyUvSI iaTz2qvFEm2KEzd8oFm6Tu9OCwjOLsNOBPBHWfWVAtzIgchaqAD9GcrgOx+v0FapfbAk 3bBw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ILZpEgzl; 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-7c00a90cc9fsi498097185a.397.2025.01.31.13.07.31 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:07:31 -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=ILZpEgzl; 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 1tdyDV-0006aO-60; Fri, 31 Jan 2025 16:06:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdyDS-0006Xy-Ur for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:18 -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 1tdyDR-0007qd-BM for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:18 -0500 Received: by mail-wr1-x42b.google.com with SMTP id ffacd0b85a97d-3863494591bso1329059f8f.1 for ; Fri, 31 Jan 2025 13:06:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357575; x=1738962375; 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=RhExu0CcIw5AXAeV2nSvZookI/39bFtqH0Z7knUSKIU=; b=ILZpEgzlHrQo6DJ9mDpCkMdyOIu4bZMFvfTuvxG7NUYTkobK9/yO+7s50VNRWTX+Zn Khu0P5xH5h7nXGH4y5vOMbDcOfBGbteJGPnWpg5iUP+5rJ8zjsRYGM0HvK7tZf00DiRL aDhR85RwtQ/5nLsxflvotDQwUKQgEiQadqiTLSvOXzyBO0uhz/e0mPR/u5yaoZnE6dzu H15ODyDlMn/hVjRjufluwtxQbZHqdsLxECVpNYDIsJOBs3f2UcgbShU8Zj5v1n8yQSpW 2/84cFEDYy2We66I12lZrDYTV4QLE0hkOjjbRIC+6nhiNdsS6/XMtZWZf8N/zsvFlWW4 3ebg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357575; x=1738962375; 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=RhExu0CcIw5AXAeV2nSvZookI/39bFtqH0Z7knUSKIU=; b=DzH9/kXZwpf0UQUIONAKanFsRQDXRGJeUEt8TKaRcwPc5PV2tvMqYOVbMlnGHuwyrx OQZBqZukD50e1zfvT3vW4B+P+IunktXLuFeqDtT7mnaYVWcioQ/eet4rGpXiXm34mpis lSBJr4MXdvUpVRE1Xou10ME8APlhAu3HpIg+dAxN31daDypAX5ymYWbBamdOtROrnGv8 /wxtCrzDOmSQWkWQQc8oSzYftA2PB0/6P7McqYBatAp+1zrqgUTGdYcVP1hyKkg5ucIr SgC6sCH3GMbuhc91BeSRnWZaNVfjPwM3lpmEhlSOVHy7b10KtQh5LnW0d+el9SU355RA agwA== X-Gm-Message-State: AOJu0YzjY8jhRSJH+qvYJRt+e3GM060SvduY2z1DgJiBxvwHJsuFyHAE SQWoM+g8Jt+mtX8oiVVTpI6RmuVNrgHQfCvrtin71vzokL/z3ETHAFlkigjcF2uFpVAky4mRx5/ jH6Y= X-Gm-Gg: ASbGncsmZNRXlfLotrETz7sLFRURtuoyFC8wyjwlhCgaPegVITgmzubK3dAEsMo6Lym XQKiu97WAPwi/nkzYClGa/aSsL/s/+TUYuv9OOqG+smQOUhFlQnPz7gpLZpiKjWd96Gu1SBlNcX gDCZPbSkksmsHJZEEdkSMzaxGhuM8RlM7xQwcMavLa2ZH4M3dJ9XZCDJ8YEJxE0XPDrYIgQHW96 yKHp9YGFx8TZJYNXcEafSEhbts91ZyRMv0hksblIwE0uhJxkyQ4LpskQYxnEtNatTIApSyCMef6 Ao7TIyH1mMouyzv3z9IFIfZK3e23A92hcyVIqLANxbgLEdGUL/262tXtRIK72SbsCA== X-Received: by 2002:adf:f981:0:b0:38b:dbf0:34f2 with SMTP id ffacd0b85a97d-38c520bda40mr8324329f8f.52.1738357575450; Fri, 31 Jan 2025 13:06:15 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-438d7aac93asm100550515e9.1.2025.01.31.13.06.14 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:14 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 11/36] hw/mips/loongson3_virt: Propagate %processor_id to init_boot_param() Date: Fri, 31 Jan 2025 22:04:54 +0100 Message-ID: <20250131210520.85874-12-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 Propagate %processor_id from mips_loongson3_virt_init() where we have a reference to the first vCPU, so use it instead of the &first_cpu global. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250115232952.31166-11-philmd@linaro.org> --- hw/mips/loongson3_virt.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c index ee71fe9e9b5..85cf1f707fa 100644 --- a/hw/mips/loongson3_virt.c +++ b/hw/mips/loongson3_virt.c @@ -173,7 +173,7 @@ static uint64_t get_cpu_freq_hz(const MIPSCPU *cpu) return DEF_LOONGSON3_FREQ; } -static void init_boot_param(unsigned cpu_count) +static void init_boot_param(unsigned cpu_count, uint32_t processor_id) { static void *p; struct boot_params *bp; @@ -184,8 +184,7 @@ static void init_boot_param(unsigned cpu_count) bp->efi.smbios.vers = cpu_to_le16(1); init_reset_system(&(bp->reset_system)); p += ROUND_UP(sizeof(struct boot_params), 64); - init_loongson_params(&(bp->efi.smbios.lp), p, cpu_count, - MIPS_CPU(first_cpu)->env.CP0_PRid, + init_loongson_params(&(bp->efi.smbios.lp), p, cpu_count, processor_id, loaderparams.cpu_freq, loaderparams.ram_size); rom_add_blob_fixed("params_rom", bp, @@ -643,7 +642,7 @@ static void mips_loongson3_virt_init(MachineState *machine) loaderparams.kernel_entry = load_kernel(&cpu->env); init_boot_rom(); - init_boot_param(machine->smp.cpus); + init_boot_param(machine->smp.cpus, cpu->env.CP0_PRid); } else { filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, machine->firmware ?: LOONGSON3_BIOSNAME); From patchwork Fri Jan 31 21:04:55 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: 861013 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp928785wrr; Fri, 31 Jan 2025 13:06:38 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCVnoF1rC9AIS4/CLn67Wce3psrhpYs3I7LOI4UaPLs9OHnsyKzELaNnbVZZICqhhqhWFIxDDQ==@linaro.org X-Google-Smtp-Source: AGHT+IEFOAN3EtqrRTxR+eLNUiKcRF7qpHgjmtuO22DrBC6xiGb921bDSr0MA5B4CEnKy+ZTKzVx X-Received: by 2002:a05:6214:2b98:b0:6d8:acde:8a98 with SMTP id 6a1803df08f44-6e25b089ff1mr65125636d6.14.1738357598675; Fri, 31 Jan 2025 13:06:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357598; cv=none; d=google.com; s=arc-20240605; b=gRazNjZlUKTAq0n2shJuaO5zUJKsgJdUNw3pGXkvDcl9drtsY0w633atU9Q7Hy+1Te 7lSwUGB0q3pwBoCYpzGy0Mhp5v/1xsqzs4+8atrkPOMus7lU50HGNqKjCm2Kd069c831 60jGFjMMZdtSH92WF4laheNp9ps6/fBIcvtipwCp3CUox8deDrtrLVqZOgrram1Pbxj9 4O9mYtlvBYy8mTLIifvMMonahNk55d+K+MCHYXH5YlXIm7mN7h8AC8wXWFyog+oNS8Ik 1zH19zyx7hCo+U1ReJtJGSCFTlciS8j4mgOrWy+0gnyHsSlIjQ1V7tR6AsxiS7QivC0j GLKA== 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=jvpUSNGJl3gdcSZd+8mgaj5Zuz9YSWmGxH935I21O3k=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=jWl6kwKIczw5yEAKomrQpQla3dtcKK/AOw4v1k4s/luRHcke4wMGFsv3VWl9O8dN/5 Kwg4RcleMsR1qar32z3cwxtbIh3zXZaohelcB3rbs/JUbLkbXdbQkGANL27gIjOlzukc U2/rNDjTZfpP5i+i2uZrnwDrPTJ7KsCpTMoXHoecptLOReIuRFOl5ZGTwMdGKytoQYfT P/dsiB300/aMJP4v7fDk4j3Z+XW5Rre988WLxxKA5MRY8n2JVC/XPLuv1pOQ5uwp1oWC Ec7GMFTuNOjQSmW8ZQN/rd/I/o/jv3lNL4nRaHpVm7UfeFfS6OIQtRQL/XpdoUwKJ6V5 ORGw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Ybs0W1rL; 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-6e25499f9b4si41470756d6.302.2025.01.31.13.06.38 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:06:38 -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=Ybs0W1rL; 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 1tdyDb-0006pC-De; Fri, 31 Jan 2025 16:06:27 -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 1tdyDY-0006ha-WF for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:25 -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 1tdyDX-0007r9-Du for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:24 -0500 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-43626213fffso22827495e9.1 for ; Fri, 31 Jan 2025 13:06:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357582; x=1738962382; 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=jvpUSNGJl3gdcSZd+8mgaj5Zuz9YSWmGxH935I21O3k=; b=Ybs0W1rLMfkR/HR9zun1Y7t/wYmP4zOLtqx1qK/xGuIV6/qurkDLJyFzQ+ngtstnFq aS2r+ULQCMpNd8bzwcOAxh2u05w37Jl2yfvq6FIZ98s0y0T9WBpFxFWDGy9/I6rscy95 gHLF8tsEZ4spX4Tyyo+ppiVMPFdEyRf5hPE1RARFnF6qzm3OlkwdV7jif6E+33LPer6K 8CuHuqOiWsMDH+FrK/XqscLjTNYWWJI6K0sz8uBmFPrkCJEVERLPDG07t/gF00UxlRo4 RfjLweDXXg6dXj6E9XEmbcAtoDoU0Rn6UmGjJv5Xh6K0U96/wrmk9305zXJbqnPlhDSp ewEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357582; x=1738962382; 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=jvpUSNGJl3gdcSZd+8mgaj5Zuz9YSWmGxH935I21O3k=; b=mGEuANmpKizrfwRVZ+tZPBpDY9HPQJe3Yo5G05hrnLas+4YvSDwkekapjYKgrt2jGR T2fARwJa2LQkuhh9vu7tdLImXcgbakcoUEgwx8aqlHmZYM8YVsIJfIyuZ4w2tW2o3qOc /fIRffA/BMcLxSGiObBHa9pInMPcjjmm1UMkOeaiAwcl30SoxOTNeX7tmD4acoCBVaWs NLfOYeihpKmk4d44CQEMKlV0a4A+4uoglWxKQnLHFI5bS4/WK7rix9RxaXYGGcglRdY0 vDs+uDRs0i5DTUJaUqlxRjlCl3myF+YPWeScHTz6ewi34KZIN/VlV/H/GCmXvCXsEwgt LA0g== X-Gm-Message-State: AOJu0YwiSyzU9BizpMuknjjIYUA2lpUeOmq5Ceys5LgLs2lI7YLZ55PS n+tBTLTn27HfkykWKkUneZDvppI0NaJgWdWytAU7aPH/ux+vXIGv0PEqYnkd3AmKYr14y9aSMfz 49Dc= X-Gm-Gg: ASbGncu1AHAPZULAmg2zWPd4qkPpW/e6LCGayztHBaPX7jXZHxRLmemeDli5mgvQi9Z aBKmFKm1CgJ9j/ffXh5e2Mb+izwZm8MFEKs/aV4450Kz3unf15FggVoNT6LZ5wHPPHT/9I5hX+5 6dT0v7o041z1OocuSWNEG7l5OtCW4NoKDpRF+dHPvoQc9ZL4ymUEZiX7xAKLEfhmfhH4ff66FaI qURCExdN6Q7trmyvsKQbi5vShqk7y7XXxGyw/I0LHP0cAfXLHM7X4RhmrSaq5NzqU06KxLaP9Ye IqI0USCHb7IqfssRNOmswgroHIUh3lDJa36Uz0zX1VJifms/YT1RxH30FRYDcquvvQ== X-Received: by 2002:a05:600c:3b05:b0:436:76bf:51cc with SMTP id 5b1f17b1804b1-438e6eff2a2mr36132475e9.12.1738357581641; Fri, 31 Jan 2025 13:06:21 -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-438e245efbcsm65198765e9.33.2025.01.31.13.06.19 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:20 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 12/36] hw/mips/loongson3_bootp: Move to common_ss[] Date: Fri, 31 Jan 2025 22:04:55 +0100 Message-ID: <20250131210520.85874-13-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 loongson3_bootp.c doesn't contain any target-specific code and can be build generically, move it to common_ss[]. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250115232952.31166-12-philmd@linaro.org> --- hw/mips/meson.build | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/mips/meson.build b/hw/mips/meson.build index fcbee53bb32..31dbd2bf4d9 100644 --- a/hw/mips/meson.build +++ b/hw/mips/meson.build @@ -1,7 +1,8 @@ mips_ss = ss.source_set() mips_ss.add(files('bootloader.c', 'mips_int.c')) common_ss.add(when: 'CONFIG_FW_CFG_MIPS', if_true: files('fw_cfg.c')) -mips_ss.add(when: 'CONFIG_LOONGSON3V', if_true: files('loongson3_bootp.c', 'loongson3_virt.c')) +common_ss.add(when: 'CONFIG_LOONGSON3V', if_true: files('loongson3_bootp.c')) +mips_ss.add(when: 'CONFIG_LOONGSON3V', if_true: files('loongson3_virt.c')) mips_ss.add(when: 'CONFIG_MALTA', if_true: files('malta.c')) mips_ss.add(when: 'CONFIG_MIPS_CPS', if_true: files('cps.c')) From patchwork Fri Jan 31 21:04:56 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: 861024 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929931wrr; Fri, 31 Jan 2025 13:09:26 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCWDoOGOykUNP6CR1m0YWo55+yjpL8LEjrE7hFEgGvCRDWSY3uxjcySo3QsEuejj+V2+xpul0A==@linaro.org X-Google-Smtp-Source: AGHT+IGQMIDMUKODlvsKVz59MM1aEdVaxD/+nXqq0YsIlj9ybRrWBUcnQchL977EyNq708MmqGLO X-Received: by 2002:a05:6214:2527:b0:6d8:960e:5785 with SMTP id 6a1803df08f44-6e243bba389mr201457586d6.13.1738357766260; Fri, 31 Jan 2025 13:09:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357766; cv=none; d=google.com; s=arc-20240605; b=XdGYWtUHPyE3/kCFBjlaHS1gqm8oSyRFf1VBJ5e7n2d7p7eyqYB1Gtm8c7zogWXc9t UsOvmdYTH4rpEPg0sfiuqdrT6JqGfalP46ObHJdtfyJtSwszLb0Qe6ik1aCEi/UmDCwt ZSGUxob5KDJj8J61D+02XgVYOy8LgVcRe9OzOuzD5laKdUJ3Gn9vj9nF4yNzRnI0Fylm eQh53MBig4WPdhqsLXfWAVQl81yHxuFluvMOj+YTYTij0+DaQul1wZjO8z2G4dI2SuJh r5+OHV8uq86S27Ubm5MafzdlNGDq4Ia6UeGWtIf7LpgL8TE4tucIZMueCnpQHI+hX3tt rmHA== 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=I05cOzS+i3UJgRm0Kn/FK0GGIAGJGVFzC35zyMSTnLU=; fh=SfxGRdznNTUPe3QXUsbXKU5SY2FceC4ZRal/FlA3L8g=; b=A7t7ehAXKzlIjkoKRSM9WqpG+hPS3SE6VZ2VmWeE3v6bU66a6E3NWfJDbeEOfGdW0n XEza586OyKhaj+g4ZHYdMTG+0JQ4wr6HPzhlVKBr7N/Fhg6x9J4Fjdi5qAsGEjp3njhj krmpdfoy6kvr9hrcr39lT6CIEtuTxxR7q9U0gm5TE0L3zJhi/zqZIs6PIKQDo/37SuAF l46Ug+1TjGgKB/ziRCXbFTGb9jC4tFuUQSoe81ECAPbO+GU947c/2NvC4soc0gZwXsD5 bayWyXps9uDXnhnWcnFDn+kgorsTJWWXp+GXtYm4c6bZYXA8CSwdk94K8T813xvL1PKp tb5w==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=e1+FBAS+; 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-6e254811751si45384986d6.25.2025.01.31.13.09.26 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09:26 -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=e1+FBAS+; 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 1tdyDh-00077o-CT; Fri, 31 Jan 2025 16:06: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 1tdyDf-00070h-GW for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:31 -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 1tdyDd-0007rd-RY for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:31 -0500 Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-436a03197b2so16990725e9.2 for ; Fri, 31 Jan 2025 13:06:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357588; x=1738962388; 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=I05cOzS+i3UJgRm0Kn/FK0GGIAGJGVFzC35zyMSTnLU=; b=e1+FBAS+wfTEu4p2spqz2avwT+6XCfGxer7wf/n14Cw4rvUk/ZJyQem4Oj4ppPSXA2 0KCe6d42KJwbcXpClF/cUQ9ssFBohKTojFYIaBol8UjvxxTtH9I2Y6dTHruVIeWhXUTD fKZWD4PXY+rMv53VOKknmNHssSFPg3k2GNwdA+0uouAt4DkuDmPqwgqYQ96UUw7Nlktp BPcU7XrR5EgLH25okkZ08LMnWVvrofNxEoa4oSpkqOm6kcLe/3FNTP6yqlgZx6UGsnGj K4SgIsKnz4FEAio2SYcgWoEpNt3q4vCEWzNpiGuLPQJjbU7S3pWrVKG7C3nlM1G6j9b7 OHwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357588; x=1738962388; 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=I05cOzS+i3UJgRm0Kn/FK0GGIAGJGVFzC35zyMSTnLU=; b=SmewEdAM+pGnEDXkdHKMnJZ0nLoaE7RCXgLSC1GJYpVHINkUVKgLmh7/t/Xm16PeuW XPOvBohiMZ0soPiEM5VN/tGbaxQWnBLRBuCjubjvx+sbJS6D5WyJKekoWkIXJ295EDk0 CjhS9oOGCDwPPA6y11hG9MRkncBZJDrTdTzBI2Nml9oamcAbPPIYUP/QVnybyVz4EvDW ixl9aTtT9IXYthXinOjhAOVbfkItdjHSdTr3Eoz6HuOFolSiBxc1gTNkG2jkL2m58ySv d8VX0vSrkt02cxdkv8XjcIMSX0NLf0pjVoJwwDn/VC5ToaAsrfi8fyiPR5PaSA0VFshy hUGg== X-Gm-Message-State: AOJu0YyHUCCOX3ysV36nutqU0TSxwhOJOBzzRYTAkWVEqaL6U4ATuE1h XWfgrDz9Zc8KYx4bGEbFwZBqQM6JP1m74nAW+wAqsQLeJ7o1tNjk7I0BZJ7tt8yDvdOo9s+AVpY z6TE= X-Gm-Gg: ASbGncs7EvHcg54yLwjdJ9xOES7J1B1iVpDIsUpkiclGaIO68q9G8PsnWutq5M+b+ee 2Q2BRx9RbBJEzx60bzAqngQaFNJAqYrXHd9prHbn2qWNIJi4ONQlPbzAzEPsMuQ1Or8AHNjLLtt jpsZstDRRZNNCX/FeSgbMj1E+biyqkOQBOEledxq6A/BsYOpF7Pc8c41PhXvBVDIAhii06rHW1i 0h1AQbJPUqTv9qr35eZ8E7Ktmt10SeP2OkFRtxMTg8NJPdM71TGdn8f2PIRb+vZpBDMAMIBuBZB WvjxnHxIOQtaAZqDFqQTQAvWEGDWFUb3wGOJWmsP5AK03qj8xvrRJOlUH9nSocRBRw== X-Received: by 2002:a05:600c:c17:b0:436:51bb:7a52 with SMTP id 5b1f17b1804b1-438dc3bd7e3mr120375475e9.7.1738357586309; Fri, 31 Jan 2025 13:06:26 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-438d7aa605asm87406915e9.1.2025.01.31.13.06.25 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:25 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Bernhard Beschow , Richard Henderson Subject: [PULL 13/36] hw/irq: Introduce qemu_init_irqs() helper Date: Fri, 31 Jan 2025 22:04:56 +0100 Message-ID: <20250131210520.85874-14-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 While qemu_init_irq() initialize a single IRQ, qemu_init_irqs() initialize an array of them. Suggested-by: Bernhard Beschow Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250121155526.29982-2-philmd@linaro.org> --- include/hw/irq.h | 11 +++++++++++ hw/core/irq.c | 8 ++++++++ 2 files changed, 19 insertions(+) diff --git a/include/hw/irq.h b/include/hw/irq.h index c861c1debda..b3012237acd 100644 --- a/include/hw/irq.h +++ b/include/hw/irq.h @@ -41,6 +41,17 @@ static inline void qemu_irq_pulse(qemu_irq irq) void qemu_init_irq(IRQState *irq, qemu_irq_handler handler, void *opaque, int n); +/** + * qemu_init_irqs: Initialize an array of IRQs. + * + * @irq: Array of IRQs to initialize + * @count: number of IRQs to initialize + * @handler: handler to assign to each IRQ + * @opaque: opaque data to pass to @handler + */ +void qemu_init_irqs(IRQState irq[], size_t count, + qemu_irq_handler handler, void *opaque); + /* Returns an array of N IRQs. Each IRQ is assigned the argument handler and * opaque data. */ diff --git a/hw/core/irq.c b/hw/core/irq.c index 7d5b0038c12..6dd8d47bd6e 100644 --- a/hw/core/irq.c +++ b/hw/core/irq.c @@ -49,6 +49,14 @@ void qemu_init_irq(IRQState *irq, qemu_irq_handler handler, void *opaque, init_irq_fields(irq, handler, opaque, n); } +void qemu_init_irqs(IRQState irq[], size_t count, + qemu_irq_handler handler, void *opaque) +{ + for (size_t i = 0; i < count; i++) { + qemu_init_irq(&irq[i], handler, opaque, i); + } +} + qemu_irq *qemu_extend_irqs(qemu_irq *old, int n_old, qemu_irq_handler handler, void *opaque, int n) { From patchwork Fri Jan 31 21:04:57 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: 861014 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp928892wrr; Fri, 31 Jan 2025 13:06:50 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCW37FAliibahOGtob07jyxkQ4jIweJ1fTyq65LZ4D5UQWRN3xsAfOfgTBvUEzepbo8dPmJZqA==@linaro.org X-Google-Smtp-Source: AGHT+IFUNLlhrcyXAmQV6yvyesZKszcciB+bNOjiMiR2dn9Ii1kuPim9tY1gfup7SBtBF8liMlly X-Received: by 2002:a05:6102:3ca2:b0:4b2:9eee:666e with SMTP id ada2fe7eead31-4b9b70ea6fdmr7228272137.4.1738357609852; Fri, 31 Jan 2025 13:06:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357609; cv=none; d=google.com; s=arc-20240605; b=JpabPqeDoRfTzkEyJPBqpK66PbkETm8hi40z1aqSpFYbyty1KOh8APR8JfXTEN8G2N Btv5ZlhbqLdTwkrCnen282hGTmogXzyGSLixxtNgOYdHbUt1zIrysxMW/HFIdyHirDo2 8UVbsML1XWH89yW6e06f5EV9FIlRiOPEtH5BJNp3PusI60mBW03q3MfuRhhqsxP9+hjA 9OGihfhZNCpAlQg3XYPZf38LwVzWqVIWWCnnsjuBO6pWp9rJJtS3PG8aiWOTj2N6miUf b+FoNofCPLRVNqK2gprvAqnKXWsZfkVXj2GRIkErNiUOIClLqhHa3561aPBqtvPpk04A HEZA== 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=i5CNBPU1P4v/ShPK33kQ6y31CBTCaAZhUebKc6WsLh0=; fh=BL3iol0UmHCsQDzVaKYR+dV4EiRe6J9LyMibKSSQcQM=; b=er8gMUl8n26UKpXIIUjsZSINVAmtUUN3r587/Jlt07ATe5skI5SEN990w3xVp+eYHh FBgLDVBMs5Fub36QtPSxmxSQo/riCnkKl3pnbAxQj51A1IljPVpag9syrBDNbsiYFBq/ ntPjnOmLmuB2x5xxLuU1S7UfZttf1HdvLx0IvMPXawSdkO3da4FP5NE0DhdjlX8tCueR BHdFAAxRp6V4Q+V2X+YfqfZ0ooyeuguECtzSFzShxZAymKnZoBKSBi3VX/Vi+PJ8gZa1 hgf7LCBDynftJjeVKVtin83z7TOiHBb4QZ7up2yZFAIq0LAWBL/cLWFuabWtAH3eS5qV LDFw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=lDBic3GQ; 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 ada2fe7eead31-4b9bad87b1bsi953863137.244.2025.01.31.13.06.49 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:06: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=lDBic3GQ; 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 1tdyDl-0007IR-KL; Fri, 31 Jan 2025 16:06:37 -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 1tdyDj-0007BO-1W for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:35 -0500 Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyDh-0007rs-44 for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:34 -0500 Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-43675b1155bso28074925e9.2 for ; Fri, 31 Jan 2025 13:06:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357591; x=1738962391; 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=i5CNBPU1P4v/ShPK33kQ6y31CBTCaAZhUebKc6WsLh0=; b=lDBic3GQHlcUqS1Qq1rPBqox8DeYIIUGfphf4yxiTi0fpamWW1Qnk+EW4bJNGKyvdL myAqS22CkCEHGm5ys6V2UDirYD2mgJ85L+/RqI4IHGDlZ1+AxqMfdwZCHlf8VzFXZKAZ 7Lh0IfuK46ND3JOB3ZGPyFnaI4LByjG9/AopzNT5av5nzv86Ya5c/0sfOzSZPjJQRJcl THq4/N/UOJitkWoGzcdeeC0PrH48MLtzcpvCTXMKHWpNITqrmEoGahYn105AwfGGWgGn Ies3VqhDUfDvQY45ByCtiK/xINXCHNHJ1erHBW0ab31f/wrywEUqOzdwhuY0u13jLIWD HSiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357591; x=1738962391; 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=i5CNBPU1P4v/ShPK33kQ6y31CBTCaAZhUebKc6WsLh0=; b=hHuUjWC/2dP7ERjjMf4Za/8g7AQbm+718z3HEaLxkv4H6H1D817viBLyPwRwWVwltW V5NMn3mnj+GlfX2WfGd5ppapC2m/fjDwR7M2Efb1MZUBt/Adj1ND3Drgbm1DEHGZeV/z DCnabJYSGgb1aOtIXYqP3T3fsgh+oHKJAjboAbmXdWppeD0iKCpqK+fwxHM9x151MEFO ay0+bGuGHlgMmpScwIYKaTDSkZbuovHfn8zozWgxd72Dg4ot/KJ9CXzQF9zS36yc4EYU P6Egoyta6HoNADr3u54OD9JtroRb0LSx4kxNj1ILpnrqrcxidzoNij90rw9wHeFnagIo F5fQ== X-Gm-Message-State: AOJu0Yw8UedByQIS90lUNmiAJV22+3R8oIqVrOAcq/NnxfHdL60BCaqe S+K3sDmzwfF/V8PMHJkpnZ60YUpDJ+1tjIKGqIkE+HF6nBsFo+ggNfdfrkohL7K2JCscrkn/10y hi5A= X-Gm-Gg: ASbGncu/SGmNaLVutKX0dqj1B3Ey7l2C0qpwRF1qODf60EKvpYDFwsDGmhiSSvR0Qeu SwaCVMMP2TOYYaQiqpF3792uskzQnlNRU8Qc4Df5ZP39sDs4aLiEldt0mtfCWnEPU/a9gAOs5I+ kr0WetxBMqSCwhLElP6XFDdoSF0RNWENzYQN9Z5BuiMjCpYQpNz9fsa6R+JXQ6wE5g1pkoLUlu/ 3AYryfWe9/8Paxe2vYYIrwSkMB5nt4EppVnzCvZSS8KuGNP7CJophshjhAaXKV2e00txv1wAMXq y3POY0xl0woTFPrmSRVJnKkuqQcXCSTq/JltZediq6tj/z+f0+dKJnICJBA0I++Edg== X-Received: by 2002:a05:6000:4008:b0:38a:88be:bcb5 with SMTP id ffacd0b85a97d-38c51932095mr10227457f8f.5.1738357590983; Fri, 31 Jan 2025 13:06: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-438dcc6df51sm104244225e9.30.2025.01.31.13.06.30 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:30 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Fabiano Rosas Subject: [PULL 14/36] hw/ipack: Clarify KConfig symbols Date: Fri, 31 Jan 2025 22:04:57 +0100 Message-ID: <20250131210520.85874-15-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::331; envelope-from=philmd@linaro.org; helo=mail-wm1-x331.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 Split IPACK Kconfig key as {IPACK, TPCI200, IP_OCTAL_232} - IPack is a bus - TPCI200 is a PCI device providing an IPack bus - IP-Octal232 is an IPack device plugged on an IPack bus Signed-off-by: Philippe Mathieu-Daudé Acked-by: Fabiano Rosas Message-Id: <20250121155526.29982-3-philmd@linaro.org> --- hw/char/Kconfig | 5 +++++ hw/char/meson.build | 2 +- hw/ipack/Kconfig | 4 ++++ hw/ipack/meson.build | 3 ++- tests/qtest/libqos/meson.build | 4 +++- tests/qtest/meson.build | 4 +++- 6 files changed, 18 insertions(+), 4 deletions(-) diff --git a/hw/char/Kconfig b/hw/char/Kconfig index 4b73a803bf3..1dc20ee4c2c 100644 --- a/hw/char/Kconfig +++ b/hw/char/Kconfig @@ -78,3 +78,8 @@ config GOLDFISH_TTY config SHAKTI_UART bool + +config IP_OCTAL_232 + bool + default y + depends on IPACK diff --git a/hw/char/meson.build b/hw/char/meson.build index 1750834385a..ed3529cbbb7 100644 --- a/hw/char/meson.build +++ b/hw/char/meson.build @@ -4,7 +4,7 @@ system_ss.add(when: 'CONFIG_ESCC', if_true: files('escc.c')) system_ss.add(when: 'CONFIG_GRLIB', if_true: files('grlib_apbuart.c')) system_ss.add(when: 'CONFIG_IBEX', if_true: files('ibex_uart.c')) system_ss.add(when: 'CONFIG_IMX', if_true: files('imx_serial.c')) -system_ss.add(when: 'CONFIG_IPACK', if_true: files('ipoctal232.c')) +system_ss.add(when: 'CONFIG_IP_OCTAL_232', if_true: files('ipoctal232.c')) system_ss.add(when: 'CONFIG_ISA_BUS', if_true: files('parallel-isa.c')) system_ss.add(when: 'CONFIG_ISA_DEBUG', if_true: files('debugcon.c')) system_ss.add(when: 'CONFIG_NRF51_SOC', if_true: files('nrf51_uart.c')) diff --git a/hw/ipack/Kconfig b/hw/ipack/Kconfig index f8da24a62be..28d668727c8 100644 --- a/hw/ipack/Kconfig +++ b/hw/ipack/Kconfig @@ -1,4 +1,8 @@ config IPACK bool + +config TPCI200 + bool + select IPACK default y if PCI_DEVICES depends on PCI diff --git a/hw/ipack/meson.build b/hw/ipack/meson.build index 26567f1068e..e4805228926 100644 --- a/hw/ipack/meson.build +++ b/hw/ipack/meson.build @@ -1 +1,2 @@ -system_ss.add(when: 'CONFIG_IPACK', if_true: files('ipack.c', 'tpci200.c')) +system_ss.add(when: 'CONFIG_IPACK', if_true: files('ipack.c')) +system_ss.add(when: 'CONFIG_TPCI200', if_true: files('tpci200.c')) diff --git a/tests/qtest/libqos/meson.build b/tests/qtest/libqos/meson.build index 46f130ccfdb..1ddaf7b095b 100644 --- a/tests/qtest/libqos/meson.build +++ b/tests/qtest/libqos/meson.build @@ -32,7 +32,6 @@ libqos_srcs = files( 'i2c-omap.c', 'igb.c', 'sdhci.c', - 'tpci200.c', 'virtio.c', 'virtio-balloon.c', 'virtio-blk.c', @@ -70,6 +69,9 @@ endif if config_all_devices.has_key('CONFIG_RISCV_IOMMU') libqos_srcs += files('riscv-iommu.c') endif +if config_all_devices.has_key('CONFIG_TPCI200') + libqos_srcs += files('tpci200.c') +endif libqos = static_library('qos', libqos_srcs + genh, build_by_default: false) diff --git a/tests/qtest/meson.build b/tests/qtest/meson.build index 94b28e5a534..e60e92fe9de 100644 --- a/tests/qtest/meson.build +++ b/tests/qtest/meson.build @@ -286,7 +286,6 @@ qos_test_ss.add( 'e1000-test.c', 'eepro100-test.c', 'es1370-test.c', - 'ipoctal232-test.c', 'lsm303dlhc-mag-test.c', 'isl_pmbus_vr-test.c', 'max34451-test.c', @@ -317,6 +316,9 @@ qos_test_ss.add( if config_all_devices.has_key('CONFIG_VIRTIO_SERIAL') qos_test_ss.add(files('virtio-serial-test.c')) endif +if config_all_devices.has_key('CONFIG_IP_OCTAL_232') + qos_test_ss.add(files('ipoctal232-test.c')) +endif if host_os != 'windows' qos_test_ss.add(files('e1000e-test.c')) From patchwork Fri Jan 31 21:04:58 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: 861021 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929450wrr; Fri, 31 Jan 2025 13:08:20 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXZ0xFc3bPnwj4Y99G/9QrLhE0nj+dMKYev2f2BD/6FkLhamLTYwNgkbVJuhk4Yj/waCye4NA==@linaro.org X-Google-Smtp-Source: AGHT+IGcqBEtxWytf25Bkt+M9QB6SK55IZYqE/m7TsHTafIJU2Ru0N2C6O19T5ULMb5jEtoiYzfb X-Received: by 2002:ac8:5794:0:b0:467:7fbf:d115 with SMTP id d75a77b69052e-46fd0a6c343mr177308651cf.12.1738357699803; Fri, 31 Jan 2025 13:08:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357699; cv=none; d=google.com; s=arc-20240605; b=iTOn0+cJEelWRBxrSsiSoJEH5vnTrnizoCUlDbgtzwiLg3/spqAnYPZmHHjX3ygGCl ulhDRNqXiknpucfWnOj/kyIOp3Xus+i7k7sLWxIg+nWK1K1VqFp5Exy2tPT+Tp9WNojf dR5nfLknoy25JVZiPlTSbWAJCc4Uw/aTxdN8pfbX/AgT+urtIt9JTJELklLyK5E29lJ0 nfMh194nvTfDwtHfaLHetXsCGgpY2HA+BoDeQLdFSCYKQT82DAgNhSAGq1v03LVhVSF0 rkVCmL5kuDA0ZoKGiDh7JNkeH4sjcH1OqUJ1tAZUerbGEawAk8WtAVY4P6d1YY0jSoH3 UGeg== 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=rqI9LRvktHJX4HtGOA/1PZYCP3HIyYy2w16C7Qz7++g=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=P1nfmIV44I5+AhFSxv4rhTq/Qkk5IHryAj6xofUc0oU7BaRZfdSTI75FOeRCqbn/yS Be7ojWQHywMu2JKt2SiEzVyAXRfw1d1JubvwBNJuieUUmzRdHQOgHUwB01pPL/yTbjp3 6gHczGDHI2/Ug0jn00JwKW2AfKCT55QoInhvaEdZ278G/hKm9jUSHTYIBvYZKgS0hIs3 FujFM9Mbs0JQCzXdUZ0y/GEe/5m2LJoT9cA5Kqs6aNkBWdzkIFN3S3S/LcJSRzj4yKeU Nfk3RDa8dV+KGvl8PxhnSSffLq2XNmfRkJm+6baPoEQolW2zNzhYOIvCaWwj/+cHxL1l aRNA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=xTX9GH+S; 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-46fdf1d38b5si45251511cf.463.2025.01.31.13.08.19 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:08:19 -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=xTX9GH+S; 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 1tdyDq-0007b0-Is; Fri, 31 Jan 2025 16:06: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 1tdyDo-0007OB-AK for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:40 -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 1tdyDm-0007sU-Ln for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:40 -0500 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-43624b2d453so29122625e9.2 for ; Fri, 31 Jan 2025 13:06:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357596; x=1738962396; 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=rqI9LRvktHJX4HtGOA/1PZYCP3HIyYy2w16C7Qz7++g=; b=xTX9GH+SuP4fZoAVIFyG9oywBY1rgpNQZd6hhbrTHZzx0oML5+trmEJk3o3jwR9M0n 4atxJfYz6UC1dRD1zb1c1cHp9iXD9rvQ9sevYkAj45Q3HKbR0Kc3RTw42K8VDNDTXHxd nM3BBz8PvD6oAGdOgTo9oGOkafWEAq65RzhDmQbH/a0sGBj+aWvoORsaPFyd6mwBjmw2 6EhTHaghrshloyFtjpzXb+ag4FK62eD404ruNDgXNhTyhBUBHSc+SJqv2q3hYqJi9Esz GDJg0CfOfIBCUvYB0hOVtgawKlpoZco8zoEDH/2IS5LFV29LZUR/D7m8lC84QNn1eGoS pk6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357596; x=1738962396; 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=rqI9LRvktHJX4HtGOA/1PZYCP3HIyYy2w16C7Qz7++g=; b=q8gbxOsLSfkjKDfhrPYNHNMUG8qy+soY7AGQrDj2B58xLFmVfh1ZP4/u0gtOJTD36i JnYobXU/R3oNkmEDv5Gizf+rvbJogfqppsHJ4Chbnd7oScqNGLBFwwmgHOsC2WhHs4qH YuNOEFPZN7UIlkmz98M17OLBoX24Acht7Td4bVJXxnfWWu/V2IUCSFUyRtqUQ+cOtMLy 5W7Hb2hBqjp7Vzs/a9bA3/90wGrh1/Pse3lYLmxWvLlABHC1y1htA/spVOOFSPKIDeMt Cx/YYAZNuFMp0pYJq/ClOFWyVjGjf7ZqOlVZ3u6yMKvJR8Y/9E7YONtpcNjBCBBdO5oy k4xQ== X-Gm-Message-State: AOJu0YwPfWC5BjNFSD8uHUN7OTsu9tinYoustBcIcGE8l9SVrsmTcnGO t1/IOI0R2IaX82LqH+lG/6+0lp6YpsXAgGaAcQByJy0GteJF5fOv3SWJr3ECmBVs7lVkF7GoEfx n8t8= X-Gm-Gg: ASbGnctxmaDDgT7yGjiLRiLpfZyQ61EjLdzrZgrEPGx8k4PWGgbkZU7TIUunHSiPbsd YvBo+FBFuJjdUak4g909mSeXX/RfHLqtbvJohKSCL4PMRU4ocstvechuSsttByVTpcH7yMdXz0m SaIpu8b6E5zMoPzfZ1FN3kAYF6aewe/WxrTQtKk+mhp/03GAdiaNIrxdqZv+PrODZXssIsH8YYk MARg7EnSOR6QSsNiM3SyvI2/hrHLRAh/zS3PmU5BG9wR56UW5xlUl7ijQnLFQObhxY+32ZytC+Y 2/4wmvvj0KqaAn4Y1+Uh9Y7eFxWrIH3PdWMIMs3SlQyXeblnWtA0/hEmF8fO8/hd2g== X-Received: by 2002:a05:600c:1e02:b0:434:a802:e9a6 with SMTP id 5b1f17b1804b1-438dc3c22acmr146724755e9.7.1738357596422; Fri, 31 Jan 2025 13:06:36 -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-438dcc2e239sm100944485e9.18.2025.01.31.13.06.34 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:35 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 15/36] hw/ipack: Remove legacy qemu_allocate_irqs() use Date: Fri, 31 Jan 2025 22:04:58 +0100 Message-ID: <20250131210520.85874-16-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 No need to dynamically allocate IRQ when we know before hands how many we'll use. Declare the 2 of them in IPackDevice state and initialize them in the DeviceRealize handler. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250121155526.29982-4-philmd@linaro.org> --- include/hw/ipack/ipack.h | 7 ++----- hw/char/ipoctal232.c | 4 ++-- hw/ipack/ipack.c | 5 +---- hw/ipack/tpci200.c | 6 +++--- 4 files changed, 8 insertions(+), 14 deletions(-) diff --git a/include/hw/ipack/ipack.h b/include/hw/ipack/ipack.h index cbcdda509d3..00f397fd020 100644 --- a/include/hw/ipack/ipack.h +++ b/include/hw/ipack/ipack.h @@ -12,6 +12,7 @@ #define QEMU_IPACK_H #include "hw/qdev-core.h" +#include "hw/irq.h" #include "qom/object.h" @@ -19,10 +20,8 @@ OBJECT_DECLARE_SIMPLE_TYPE(IPackBus, IPACK_BUS) struct IPackBus { - /*< private >*/ BusState parent_obj; - /* All fields are private */ uint8_t n_slots; uint8_t free_slot; qemu_irq_handler set_irq; @@ -58,13 +57,11 @@ struct IPackDeviceClass { }; struct IPackDevice { - /*< private >*/ DeviceState parent_obj; - /*< public >*/ int32_t slot; /* IRQ objects for the IndustryPack INT0# and INT1# */ - qemu_irq *irq; + IRQState irq[2]; }; extern const VMStateDescription vmstate_ipack_device; diff --git a/hw/char/ipoctal232.c b/hw/char/ipoctal232.c index d1e5f6dad2e..a2879977fb3 100644 --- a/hw/char/ipoctal232.c +++ b/hw/char/ipoctal232.c @@ -184,9 +184,9 @@ static void update_irq(IPOctalState *dev, unsigned block) unsigned intno = block / 2; if ((blk0->isr & blk0->imr) || (blk1->isr & blk1->imr)) { - qemu_irq_raise(idev->irq[intno]); + qemu_irq_raise(&idev->irq[intno]); } else { - qemu_irq_lower(idev->irq[intno]); + qemu_irq_lower(&idev->irq[intno]); } } diff --git a/hw/ipack/ipack.c b/hw/ipack/ipack.c index ed75f791832..b6defae6025 100644 --- a/hw/ipack/ipack.c +++ b/hw/ipack/ipack.c @@ -55,22 +55,19 @@ static void ipack_device_realize(DeviceState *dev, Error **errp) } bus->free_slot = idev->slot + 1; - idev->irq = qemu_allocate_irqs(bus->set_irq, idev, 2); + qemu_init_irqs(idev->irq, ARRAY_SIZE(idev->irq), bus->set_irq, idev); k->realize(dev, errp); } static void ipack_device_unrealize(DeviceState *dev) { - IPackDevice *idev = IPACK_DEVICE(dev); IPackDeviceClass *k = IPACK_DEVICE_GET_CLASS(dev); if (k->unrealize) { k->unrealize(dev); return; } - - qemu_free_irqs(idev->irq, 2); } static const Property ipack_device_props[] = { diff --git a/hw/ipack/tpci200.c b/hw/ipack/tpci200.c index 88eef4b8308..470a4203ae4 100644 --- a/hw/ipack/tpci200.c +++ b/hw/ipack/tpci200.c @@ -275,11 +275,11 @@ static void tpci200_write_las0(void *opaque, hwaddr addr, uint64_t val, if (ip != NULL) { if (val & STATUS_INT(i, 0)) { DPRINTF("Clear IP %c INT0# status\n", 'A' + i); - qemu_irq_lower(ip->irq[0]); + qemu_irq_lower(&ip->irq[0]); } if (val & STATUS_INT(i, 1)) { DPRINTF("Clear IP %c INT1# status\n", 'A' + i); - qemu_irq_lower(ip->irq[1]); + qemu_irq_lower(&ip->irq[1]); } } @@ -344,7 +344,7 @@ static uint64_t tpci200_read_las1(void *opaque, hwaddr addr, unsigned size) bool int_set = s->status & STATUS_INT(ip_n, intno); bool int_edge_sensitive = s->ctrl[ip_n] & CTRL_INT_EDGE(intno); if (int_set && !int_edge_sensitive) { - qemu_irq_lower(ip->irq[intno]); + qemu_irq_lower(&ip->irq[intno]); } } From patchwork Fri Jan 31 21:04:59 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: 861039 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930515wrr; Fri, 31 Jan 2025 13:10:44 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCWGxjsBGRP+KY6bR+zMY2YIj9jrLq5eN8qhU3uW3VK2OHCzv+ZT2kuN0Zrcc9EB++VJiW1gYw==@linaro.org X-Google-Smtp-Source: AGHT+IEGSiQmdPW+QUoZJdBLqpZbYDy/fH4rjBUxTdUVa3aJ+Ni4v5Dz/9+xpk2hGWBeTxM0gw98 X-Received: by 2002:a05:622a:11d5:b0:46c:7276:eda6 with SMTP id d75a77b69052e-46fd0a81873mr160778361cf.7.1738357844289; Fri, 31 Jan 2025 13:10:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357844; cv=none; d=google.com; s=arc-20240605; b=RQbjyJtnQVqAIGPW7BYcXN9skWWJhI7TZDyfU4oxL+R7UdZRV6amKIiJ5VZOLP/fL0 dFfhnl0x3iTgia7rw+wgpzYRfE9F9EcjrEBbzb7J3YuoMWUMG3NQAzIf+5saKU2gRPvQ SsOQmP2fNGt2X1UEOXtKw3DqzvfpT/k2scXb6wkHinahDyVboEDmlPLetqMJOuW1QZih FS+YV2c+8BUt9MDbAdU37L/N6r0pm/5cSACjgs/QL8LZugANXb0TfzUay+TlHIyVNaCy Y7nLxjts7eIAUz4/kHAiFdCwXN07lfk6I9T/5Se+5GwvLBfmuSR2dXcHd6GjO1beKgfK kwRg== 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=mP3QyIe81tPdRVqVU2heOfv/G9r7fIu1+pBAt75OnDs=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=i37VlxwQR+/mnlFB99LCn42b5KG0AdpxlpLqS3CYYtFeNXlFLwhctl54T3tfIxLLRP rU/KELpcM/wieihtoddwVuEib/ZjdejWHtxVfjqDA9j/XzLsj+ddcus1APa5Z4FscorL EzTMu3Z6yZ4zIM3QHP4gF553oflul7wzy9lKkwFtHd5i+y6XQNmW+kMp7Hz5BAmvGqHb umZQTTLMu4fMnqRClu4QMjYQcyMhUWi0oiC3UqkFfLiVfe0Ovnc4u/d2SpUWDTdvdsFs nr04FBWB37+u/NiQd0FSMHgE5UNx49fdEhbyLPM63XqwdJ3TqvnXbU4+WCsw6i9TY0I+ h7oA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=tENHfI9d; 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-46fdf0abc2asi43822971cf.106.2025.01.31.13.10.44 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:10: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=tENHfI9d; 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 1tdyDv-00082o-MH; Fri, 31 Jan 2025 16:06:47 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdyDt-0007q5-Je for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:45 -0500 Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyDr-0007t7-PC for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:45 -0500 Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-43618283dedso24845715e9.3 for ; Fri, 31 Jan 2025 13:06:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357602; x=1738962402; 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=mP3QyIe81tPdRVqVU2heOfv/G9r7fIu1+pBAt75OnDs=; b=tENHfI9d/HRmuDYvg4470ecv26GrQ6il/wsSBVFoPlCTJ4GdJvH4uqLjsbPSYPHDy8 7qL3vVgumyxh/ql398oo5CuD1StcxpLFcNk6jVHNRiyyD3v9Yw2crwoxqA2cQlfsA7tX j4ZegJjRIkQQ3W01oqFC8YqUi50kVRH6ChDRtcKjH++CJdlbIRFDRHTb28ymiGnACtIv ROfHv5TUYYHBZgJRvIjEhgtjcn8+lzOgSzrB7kUIgmJW69cHyMdAtQI/jnrW5jTjaFyv YACJC7drMl8wEKqtKKIlcMeW0/KihLhDI+GRJ8EYXxJ8bDk6dtmlI+hE9yqQgGF4fycE xWKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357602; x=1738962402; 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=mP3QyIe81tPdRVqVU2heOfv/G9r7fIu1+pBAt75OnDs=; b=bgbiBDz5Jy7oxin88h04b1SLJiBCcKngUtlSOGglu8qgO9RTaHdlROuzAf3oDvDhjF r4qMz/nB8EyML6kVi+8sn4cUUDwlHk25XFf+eHPO94vk0ex9V5mXYq/Tzb7WElf3eArt 3jTeosLqhFY4rFNhzBIi+2XOmnifSCJQsehDzAh+x0jaB/q4Lk3H5VnOmPL9Oopz5RJN MNkJmq3A+QSDtnCF2HMB1l13xXUdn7EP476bLRVyjaGOLXKSMQ0DCSSqFe/+BwkV/MEs V7iRqOYJdxxQoR9fNW51ktWBjW5O20RlOzbTpb++HQ+lvRVwA6kGnRwsVZpp1BIN5SOK 9B3A== X-Gm-Message-State: AOJu0Ywuvrh68rxqnSN8KRZhD1gEbAiw+DDzkf6BHTWUgl6yDeznLG9r 2AKJMGXFJxx54DWxjQbtwYZ72ZqCxXq+By3Z/AG5dTE9E3kgvv2X7Z+923Jhe9cZw9AEfooBEoC bJNo= X-Gm-Gg: ASbGnctcnc8bjWk9FfL22vP/zis42+ak9bTtdq9KAlz2AGnHIZ71Nj3i6eXvhCpqG/6 i4KhRMnmv9YzVWGrFCABhdzsx6HGXwFTNUGyN1ex+RTKowXQoYc9Ol65uOmWHDkS8w8nadCXDYu c7kKCKIJMEQtCsLD3LuV9fY0XBtdR7hdA2+Cs6+jFQSeNLDhBXUL+S/lJjVQvm9Hf37FWw94X20 kj882vnqgpCGGlJobtbrJYh5UBmxM8uKwrt6Ny3x/ztjRDK4PoIKEehJvTWH/ZogetJMCAuAOUr +5P/eRHHV8+W8lU8Q07fyQKShHT8BsgD4uBegbYZrgCXQ1eLKvCL7s9iFK/usPSemg== X-Received: by 2002:a05:600c:5127:b0:434:f5c0:3288 with SMTP id 5b1f17b1804b1-438dc421393mr119616535e9.29.1738357601798; Fri, 31 Jan 2025 13:06:41 -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-438e23d42d4sm68667495e9.6.2025.01.31.13.06.40 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:40 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 16/36] hw/sh4/r2d: Convert legacy qemu_allocate_irqs() to qemu_init_irqs() Date: Fri, 31 Jan 2025 22:04:59 +0100 Message-ID: <20250131210520.85874-17-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::331; envelope-from=philmd@linaro.org; helo=mail-wm1-x331.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 The FPGA exposes a fixed set of IRQs. Hold them in the FPGA state and initialize them in place calling qemu_init_irqs(). Move r2d_fpga_irq enums earlier so we can use NR_IRQS within the r2d_fpga_t structure. r2d_fpga_init() returns r2d_fpga_t, and we dereference irq from it in r2d_init(). Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250121182445.35309-1-philmd@linaro.org> --- hw/sh4/r2d.c | 38 +++++++++++++++++++++----------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/hw/sh4/r2d.c b/hw/sh4/r2d.c index 2fa439819e3..d68c94e82ef 100644 --- a/hw/sh4/r2d.c +++ b/hw/sh4/r2d.c @@ -63,6 +63,12 @@ #define PA_VERREG 0x32 #define PA_OUTPORT 0x36 +enum r2d_fpga_irq { + PCI_INTD, CF_IDE, CF_CD, PCI_INTC, SM501, KEY, RTC_A, RTC_T, + SDCARD, PCI_INTA, PCI_INTB, EXT, TP, + NR_IRQS +}; + typedef struct { uint16_t bcr; uint16_t irlmsk; @@ -88,15 +94,10 @@ typedef struct { /* output pin */ qemu_irq irl; + IRQState irq[NR_IRQS]; MemoryRegion iomem; } r2d_fpga_t; -enum r2d_fpga_irq { - PCI_INTD, CF_IDE, CF_CD, PCI_INTC, SM501, KEY, RTC_A, RTC_T, - SDCARD, PCI_INTA, PCI_INTB, EXT, TP, - NR_IRQS -}; - static const struct { short irl; uint16_t msk; } irqtab[NR_IRQS] = { [CF_IDE] = { 1, 1 << 9 }, [CF_CD] = { 2, 1 << 8 }, @@ -186,8 +187,8 @@ static const MemoryRegionOps r2d_fpga_ops = { .endianness = DEVICE_NATIVE_ENDIAN, }; -static qemu_irq *r2d_fpga_init(MemoryRegion *sysmem, - hwaddr base, qemu_irq irl) +static r2d_fpga_t *r2d_fpga_init(MemoryRegion *sysmem, + hwaddr base, qemu_irq irl) { r2d_fpga_t *s; @@ -197,7 +198,10 @@ static qemu_irq *r2d_fpga_init(MemoryRegion *sysmem, memory_region_init_io(&s->iomem, NULL, &r2d_fpga_ops, s, "r2d-fpga", 0x40); memory_region_add_subregion(sysmem, base, &s->iomem); - return qemu_allocate_irqs(r2d_fpga_irq_set, s, NR_IRQS); + + qemu_init_irqs(s->irq, NR_IRQS, r2d_fpga_irq_set, s); + + return s; } typedef struct ResetData { @@ -239,13 +243,13 @@ static void r2d_init(MachineState *machine) ResetData *reset_info; struct SH7750State *s; MemoryRegion *sdram = g_new(MemoryRegion, 1); - qemu_irq *irq; DriveInfo *dinfo; DeviceState *dev; SysBusDevice *busdev; MemoryRegion *address_space_mem = get_system_memory(); PCIBus *pci_bus; USBBus *usb_bus; + r2d_fpga_t *fpga; cpu = SUPERH_CPU(cpu_create(machine->cpu_type)); env = &cpu->env; @@ -260,7 +264,7 @@ static void r2d_init(MachineState *machine) memory_region_add_subregion(address_space_mem, SDRAM_BASE, sdram); /* Register peripherals */ s = sh7750_init(cpu, address_space_mem); - irq = r2d_fpga_init(address_space_mem, 0x04000000, sh7750_irl(s)); + fpga = r2d_fpga_init(address_space_mem, 0x04000000, sh7750_irl(s)); dev = qdev_new("sh_pci"); busdev = SYS_BUS_DEVICE(dev); @@ -268,10 +272,10 @@ static void r2d_init(MachineState *machine) pci_bus = PCI_BUS(qdev_get_child_bus(dev, "pci")); sysbus_mmio_map(busdev, 0, P4ADDR(0x1e200000)); sysbus_mmio_map(busdev, 1, A7ADDR(0x1e200000)); - sysbus_connect_irq(busdev, 0, irq[PCI_INTA]); - sysbus_connect_irq(busdev, 1, irq[PCI_INTB]); - sysbus_connect_irq(busdev, 2, irq[PCI_INTC]); - sysbus_connect_irq(busdev, 3, irq[PCI_INTD]); + sysbus_connect_irq(busdev, 0, &fpga->irq[PCI_INTA]); + sysbus_connect_irq(busdev, 1, &fpga->irq[PCI_INTB]); + sysbus_connect_irq(busdev, 2, &fpga->irq[PCI_INTC]); + sysbus_connect_irq(busdev, 3, &fpga->irq[PCI_INTD]); dev = qdev_new("sysbus-sm501"); busdev = SYS_BUS_DEVICE(dev); @@ -281,13 +285,13 @@ static void r2d_init(MachineState *machine) sysbus_realize_and_unref(busdev, &error_fatal); sysbus_mmio_map(busdev, 0, 0x10000000); sysbus_mmio_map(busdev, 1, 0x13e00000); - sysbus_connect_irq(busdev, 0, irq[SM501]); + sysbus_connect_irq(busdev, 0, &fpga->irq[SM501]); /* onboard CF (True IDE mode, Master only). */ dinfo = drive_get(IF_IDE, 0, 0); dev = qdev_new("mmio-ide"); busdev = SYS_BUS_DEVICE(dev); - sysbus_connect_irq(busdev, 0, irq[CF_IDE]); + sysbus_connect_irq(busdev, 0, &fpga->irq[CF_IDE]); qdev_prop_set_uint32(dev, "shift", 1); sysbus_realize_and_unref(busdev, &error_fatal); sysbus_mmio_map(busdev, 0, 0x14001000); From patchwork Fri Jan 31 21:05:00 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: 861029 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930066wrr; Fri, 31 Jan 2025 13:09:47 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXBAJA82QOMKyYyC2XxLv2T/5XdEAChth5WU63jRW9HXA/mgdNA36nZK891lpAVlCNts5cWdw==@linaro.org X-Google-Smtp-Source: AGHT+IG2PoaBL7gALIpwDTMMHoEeTtlF2SlUWFV33Z38DI4f6tJqLg2jH+lUSLRjn6zfZNPWZQ9c X-Received: by 2002:a05:620a:2901:b0:7b6:6ffc:e972 with SMTP id af79cd13be357-7bffcccaa9amr1965567785a.5.1738357786886; Fri, 31 Jan 2025 13:09:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357786; cv=none; d=google.com; s=arc-20240605; b=dlK9Epf5VhEMBpyapjG3PIwFUSgi/QIfju6IakNIMnW+TUktAWi12Nmf4Gy/PZza2h 9NRvWLwkSApgKxnEjK2sHMLP8zAbJ7NwR+PDsE/qDSimmmmf2Drtu5HG2TtiV4FK9hzC fBcfX1Lw7odEGWKNKxGaHCa3JQcuISsDc0xH1aBZAke8BZtvMTIA+kJEv/34kF+TUlCl CwXhWeuCyPGCdhdIW9Pb85MZSV+xRgB94UhmiQdcVK/oj48isgwdgFq0HXmm1GoTGw4J qqPYLqZHLbw4Ts29wtfVRyu+mrP49XPh+TSzN46WbJlyJF7+TIThypZGxRCJD7flYvU0 ES5A== 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=DA1wMZ2yl5z/7wIXRmmiIP3J469q4sqq1JVgdMv1DSg=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=R/PHl/u8NOsJEzYVwTEL2yCQRzXgtWUeOQsZ0zzxlPYHan7+78hnFwdHd0ppmXn+a/ 4kR/SmRKnB8yR9WtvO75D8GhyswprYtPTk8ob1qfVgou92lRgXYazatNszmInJOYEuFe XD1kIGk3zvHZaXI98VVt4OnE2bGBjqS9bCt456LhQB/SY4aW/eQUMK+xg4mKhFXlcyUr vYSgwC56pDdd6SjDmKMPWO9cvNGVRejdFZqcUjRQBFKX3LDRFaT+KVqvKeYLF8Ley7UR cvsLh0dhg1XNqq4Svp3Us5lw/Vevo4+k2yzEMuwhcJBc4q2R6fP0JD5OfnlkiNq4AHPP 4pww==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=OzPp04Jw; 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-7c00a9041d3si454326285a.257.2025.01.31.13.09.46 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09:46 -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=OzPp04Jw; 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 1tdyE0-0008VD-QB; Fri, 31 Jan 2025 16:06:52 -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 1tdyDy-0008Es-2v for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:50 -0500 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyDw-0007tR-DX for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:49 -0500 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-43690d4605dso17493785e9.0 for ; Fri, 31 Jan 2025 13:06:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357606; x=1738962406; 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=DA1wMZ2yl5z/7wIXRmmiIP3J469q4sqq1JVgdMv1DSg=; b=OzPp04JwPKsP48lZcOEtww9TcxmeWQSEjbroAKPougDQstq/WpKbK788B6UVCnZEVc WBCQHUv5ZTkgBC4g4W2P3/LNGtv+LeoqNo9KgWydIHlc/MxFEJlT/2+P50p6/cBpnl5g ek0LeZpCPy89NFew8kdDF6A+gxbblr8Qz+O0h4tZRjG7PfvW6UsFjHJgcvJlnBggnmtz gi5vdoFbRKgFdKtVGIzXWbEX9kAVzZzzFFObaW6rpggVDjUgRNL7H/aChOfz2NpV3/Tz RVRluIaea7x0fMWXbJtd+V3BK08v7IUYyXo2zUXZwbSu8rFtvRokwHbn0wkBo6DFNSSG J/yA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357606; x=1738962406; 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=DA1wMZ2yl5z/7wIXRmmiIP3J469q4sqq1JVgdMv1DSg=; b=X0nWzolatLk2hs6Zr4pIQj0eGnDgOm0pueiuMBtoKuxp6yemIAW5BFZlBm1w7ds/2Z XOGXqPLXSEkAg8HjObbTjLMsTSumdpRtfeK5S4tl7XIPdSCtcJCt5XQryi6ciVKgHlqj akO/s49kNYFWexXmOW4IGRNkxFWhpfBcrUheUiMgImhM+6Xl6unRjZpdYX00toZBBbMP 2p3jqKKuvxaSOqlxREhWp6coNi72TRVL7ziriAIs7R3MhtDK18QJ7ijuLI9H2FJfHwtn 4xWKRz8zdeDclp61nWNaBquPa7YmcuhJ18e31dCEgFs08CMvL08/2OixgGwHf4ivdnnG uOIw== X-Gm-Message-State: AOJu0YzPByPbf95xKG2xiCc54rC1TfhkTRC2Z15f8muBHqYdTDcOjXjz dGMa7vOe6UcAIx89EevzZ8O9tvUewSVuwdbBTN077VTl/3MnF0nLogPoAEc//kY+er48sRtqfbI hYWQ= X-Gm-Gg: ASbGncuET6JvdpEMsZzZaljzKJQSozFRhmrwKggRb+nY6ZsLAtXCwKOeYLk7aignH3l ngeSNntBi5xvsz9lhQGBmxnMdImQvrTXuiE5C45oXRqRYKHQXVA4PsugtDYBJegd3QrIde+3tAB vrKwlp9T/COUxnMc0G8bnTKqN6YWlL1vKIfKO1Qyde6LmWRRFCkQjSoHGxnOfXrfgbQ/Siw4NUm KtbuSXgbNObfXAmeg5w0OBgzyvKiOejXuusHpVj/qveidocCuVBjbmj6oSbGcg/APEXjWYUMa7g VLPWdtlUDsDGbzulLXx587tZF7wyJhUH3X6ZHjJzo/hybO3Jwsh2wiHuWpm7J2e7nQ== X-Received: by 2002:a05:600c:524a:b0:434:9f81:76d5 with SMTP id 5b1f17b1804b1-438dc40ffdamr105809035e9.22.1738357606421; Fri, 31 Jan 2025 13:06:46 -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-438dcc6dfb5sm103980675e9.31.2025.01.31.13.06.45 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:46 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 17/36] hw/char/pci-multi: Convert legacy qemu_allocate_irqs to qemu_init_irq Date: Fri, 31 Jan 2025 22:05:00 +0100 Message-ID: <20250131210520.85874-18-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=philmd@linaro.org; helo=mail-wm1-x32a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 There are a fixed number of PCI IRQs, known beforehand. Allocate them within PCIMultiSerialState, and initialize using qemu_init_irq(), allowing to remove the legacy qemu_allocate_irqs() and qemu_free_irqs() calls. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250121182828.45088-1-philmd@linaro.org> --- hw/char/serial-pci-multi.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/hw/char/serial-pci-multi.c b/hw/char/serial-pci-multi.c index 7578e863cfe..718ae251317 100644 --- a/hw/char/serial-pci-multi.c +++ b/hw/char/serial-pci-multi.c @@ -45,7 +45,7 @@ typedef struct PCIMultiSerialState { char *name[PCI_SERIAL_MAX_PORTS]; SerialState state[PCI_SERIAL_MAX_PORTS]; uint32_t level[PCI_SERIAL_MAX_PORTS]; - qemu_irq *irqs; + IRQState irqs[PCI_SERIAL_MAX_PORTS]; uint8_t prog_if; } PCIMultiSerialState; @@ -61,7 +61,6 @@ static void multi_serial_pci_exit(PCIDevice *dev) memory_region_del_subregion(&pci->iobar, &s->io); g_free(pci->name[i]); } - qemu_free_irqs(pci->irqs, pci->ports); } static void multi_serial_irq_mux(void *opaque, int n, int level) @@ -102,7 +101,6 @@ static void multi_serial_pci_realize(PCIDevice *dev, Error **errp) pci->dev.config[PCI_INTERRUPT_PIN] = 0x01; memory_region_init(&pci->iobar, OBJECT(pci), "multiserial", 8 * nports); pci_register_bar(&pci->dev, 0, PCI_BASE_ADDRESS_SPACE_IO, &pci->iobar); - pci->irqs = qemu_allocate_irqs(multi_serial_irq_mux, pci, nports); for (i = 0; i < nports; i++) { s = pci->state + i; @@ -110,7 +108,7 @@ static void multi_serial_pci_realize(PCIDevice *dev, Error **errp) multi_serial_pci_exit(dev); return; } - s->irq = pci->irqs[i]; + s->irq = &pci->irqs[i]; pci->name[i] = g_strdup_printf("uart #%zu", i + 1); memory_region_init_io(&s->io, OBJECT(pci), &serial_io_ops, s, pci->name[i], 8); @@ -183,6 +181,7 @@ static void multi_serial_init(Object *o) size_t i, nports = multi_serial_get_port_count(PCI_DEVICE_GET_CLASS(dev)); for (i = 0; i < nports; i++) { + qemu_init_irq(&pms->irqs[i], multi_serial_irq_mux, pms, i); object_initialize_child(o, "serial[*]", &pms->state[i], TYPE_SERIAL); } } From patchwork Fri Jan 31 21:05:01 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: 861032 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930157wrr; Fri, 31 Jan 2025 13:09:58 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCV7LwdAnV38TWasszGbkQxr3NgD4aCLNGDKi+b4nufCMH8Wl9Hf/KUGmj5Kk9aDAHa3SbeMcQ==@linaro.org X-Google-Smtp-Source: AGHT+IEWN9W9bj/GKIDl49SAz4BdE5TuSbARWHPBKfVPnu7Kj0PHZPaCiuuWtm0Wq4qT7lc84MJD X-Received: by 2002:ac8:5aca:0:b0:46c:8380:43a3 with SMTP id d75a77b69052e-46fd0bcbf5emr186280421cf.45.1738357798638; Fri, 31 Jan 2025 13:09:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357798; cv=none; d=google.com; s=arc-20240605; b=a6lVE/3DwQqyHmMe9FgZ8YrmZO6ymRl0jZfhmCdJQF8knGDtALPoUlx0hjFBgBgA98 ho8SY5hap0g7Ko7r1IUKH29fXmxyZ9NJPpaIDgaUp5Nvrf1sXhoy+8Hpbo8gUJextu7Y SZOaTl24msZ/xnYwQZ99OogbgDXzBqg8w2YJvS37UMyBMx4MMw73owphiV9vdp3YTrZ9 puvwUPjWhKPF+1ByV+nyFlPg/sEwmsL/UFWRNQXbiZ4wjJfaoyWZyxEp1QIAovUntTBM zmHVqoUcny9TjZNSDMyd5QCcCGD0AGqfOnY8nBEE1e3NwrhubZiDPmz2tRzv5lkQGupe 97aQ== 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=Yx9zBwtSy3gGrxCYpvjzpuUDny+fjTYjt9csPoUwmf4=; fh=gH6fFofGsjdKOKyvyGw7Axg2p3QmAzSTvlBGGvVcZ7Q=; b=Qx132A9HYcusA9rOVJ4BIIc8Sa6SJYR3t/PHgiACMeEVc8q1gWMWT27BJOgkc0dqEO eOLB/Nb61HjmmdTZSdjtakY0GTUuO9bLUCOQrC3bNCcTVMCOkjDDkxj7kVMv+VnroQAp PvLwGfS0bLzDru4szTfc/j4TbAYhqEdXdORVCuHhtDSA7mZrOf6uanSF+P4rvAxLR8Ab 3BeX1NtuCwNFV2X9UP533sTWsdhEwZlzakj8wvYYOlzSu280Neg5oHyBI4ThMsjlSAEH YRA6/4SjDSlkpAYnVXTp7WegD3WPjP+ZnYav9gSRtnkRcdnyjG3y126A3Xf3/ASNNgFG ST2g==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=zxFO5hAc; 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-46fdf0d8133si51079701cf.154.2025.01.31.13.09.58 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09: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=zxFO5hAc; 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 1tdyE5-0000U5-Iz; Fri, 31 Jan 2025 16:06:57 -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 1tdyE3-0000Kk-Jg for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:55 -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 1tdyE1-0007u4-Rh for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:55 -0500 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-43690d4605dso17494065e9.0 for ; Fri, 31 Jan 2025 13:06:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357612; x=1738962412; 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=Yx9zBwtSy3gGrxCYpvjzpuUDny+fjTYjt9csPoUwmf4=; b=zxFO5hAcp8+5j6jTtmzp+r+tmo7gGDIrLQv9AZjeV24YCX+kQ+5Cof1vyoV4fPxCSx nai6Rk3/+wBYUdn1HpxoUICcAw+eMMQZvkCuH9SNj4x35LVs/GRirVTpgPuPr9LCAOKj PUBN+aE2bdIqmBI28yBnZ2QN9B/fHgPG0yQe6yMwqGVOehdK/o1HIw8pzhymt4vPvpu0 k+DXOxrHVCZZasIvRv18+M2ExKYrlf3esmU6FIlwb+MkSr2YA6PIIzr4X7OTZCz4jL5q TExAuF/5iPgDXjSupQMsUzedfsmS1qVW3aTLDQk/2pEjcyLQwV9/GY8BagU72E2ubInN WI8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357612; x=1738962412; 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=Yx9zBwtSy3gGrxCYpvjzpuUDny+fjTYjt9csPoUwmf4=; b=iU3heIAfneJAh7b2T8v/+h0tyV4SmyB5L2Lkq0lPVqmP1eN7lXt86oyl+OR2etVu0u xA9TD5vXvOJuNw80MzNZdirlU9uqOh6kMs/HgQma6L2Ou8qiUis7Hr/pLDinRXmZuYqa r6BOKSiUAttpINLszf4i1qITDt6wErOJ45S/7CbXjnHQv9ZTvzLJthxxmU5dJ7EBqjS3 hMhbMktZRZpiPt5U4y89iH/VjunqXNR0i/rfOrqbVcpy+XiD6tP+y3r6FvYRWbi7qsBW bgRT0BlYRqvi3kOPqRvVUIayxN0e3/Cc8hByQZwO4M8pORBbBY3mZNNaGhT1kn2MnmKQ 5Oow== X-Gm-Message-State: AOJu0YwDC2PNJoYdUB52b/IjXIBsGjvX0vKVtjDBG6oNCge69fK/a96k /s3Go9hZBKOf6E9k3BodiUPfUIu8S1njNu3eGE5rFu78Plhz4xnG+ZXSSaKZLDqpS6gIyVusnJx PBDQ= X-Gm-Gg: ASbGncunFVGq/CfLV+tcZC2rE1gyii5BpLb1wqldv6pkXrMIHQejYHgN12vNeSaG3I5 EtdIQxhtInCsGPNbFuNopRFVBG+WUElaCeIFimzWEC5tkfaI1gmUzpXJxl9N6R0RbhDcZ5HKQLL Hbprrqadh2sXpVG6HkJ0cCBsSJxjlENxy+8OgrPfQN5MaEVdnTAz9LY6i0et82ALKC20WZ3vTyo DDNuwjf6vkEqewVuvuBttVNVTCJNWWXhM16lx4AUkIHpHz5pS2pijIqfpUEUszYAgrzX1UK+Jom BnSRevuuIy2uFXLnP3tqYWpz/wk7lJ8feFFShBMRco1LCqVPQpUtONYVPk4m9wzEZw== X-Received: by 2002:a05:600c:1d27:b0:436:5fc9:30ba with SMTP id 5b1f17b1804b1-438dc429771mr122794815e9.29.1738357611713; Fri, 31 Jan 2025 13:06:51 -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-438dcc26b15sm102018555e9.11.2025.01.31.13.06.50 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:50 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Titus Rwantare , Hao Wu , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= Subject: [PULL 18/36] hw/misc/i2c-echo: add tracing Date: Fri, 31 Jan 2025 22:05:01 +0100 Message-ID: <20250131210520.85874-19-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 From: Titus Rwantare This has been useful when debugging and unsure if the guest is generating i2c traffic. Signed-off-by: Titus Rwantare Reviewed-by: Hao Wu Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250121105935.3069035-1-titusr@google.com> Signed-off-by: Philippe Mathieu-Daudé --- hw/misc/i2c-echo.c | 8 ++++++++ hw/misc/trace-events | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/hw/misc/i2c-echo.c b/hw/misc/i2c-echo.c index 5ae3d0817ea..65d10029dc7 100644 --- a/hw/misc/i2c-echo.c +++ b/hw/misc/i2c-echo.c @@ -13,6 +13,7 @@ #include "qemu/main-loop.h" #include "block/aio.h" #include "hw/i2c/i2c.h" +#include "trace.h" #define TYPE_I2C_ECHO "i2c-echo" OBJECT_DECLARE_SIMPLE_TYPE(I2CEchoState, I2C_ECHO) @@ -80,11 +81,13 @@ static int i2c_echo_event(I2CSlave *s, enum i2c_event event) case I2C_START_RECV: state->pos = 0; + trace_i2c_echo_event(DEVICE(s)->canonical_path, "I2C_START_RECV"); break; case I2C_START_SEND: state->pos = 0; + trace_i2c_echo_event(DEVICE(s)->canonical_path, "I2C_START_SEND"); break; case I2C_FINISH: @@ -92,12 +95,15 @@ static int i2c_echo_event(I2CSlave *s, enum i2c_event event) state->state = I2C_ECHO_STATE_START_SEND; i2c_bus_master(state->bus, state->bh); + trace_i2c_echo_event(DEVICE(s)->canonical_path, "I2C_FINISH"); break; case I2C_NACK: + trace_i2c_echo_event(DEVICE(s)->canonical_path, "I2C_NACK"); break; default: + trace_i2c_echo_event(DEVICE(s)->canonical_path, "UNHANDLED"); return -1; } @@ -112,6 +118,7 @@ static uint8_t i2c_echo_recv(I2CSlave *s) return 0xff; } + trace_i2c_echo_recv(DEVICE(s)->canonical_path, state->data[state->pos]); return state->data[state->pos++]; } @@ -119,6 +126,7 @@ static int i2c_echo_send(I2CSlave *s, uint8_t data) { I2CEchoState *state = I2C_ECHO(s); + trace_i2c_echo_send(DEVICE(s)->canonical_path, data); if (state->pos > 2) { return -1; } diff --git a/hw/misc/trace-events b/hw/misc/trace-events index cf1abe69285..b35b0e77f7d 100644 --- a/hw/misc/trace-events +++ b/hw/misc/trace-events @@ -390,3 +390,8 @@ ivshmem_flat_read_write_mmr_invalid(uint64_t addr_offset) "No ivshmem register m ivshmem_flat_interrupt_invalid_peer(uint16_t peer_id) "Can't interrupt non-existing peer %u" ivshmem_flat_write_mmr(uint64_t addr_offset) "Write access at offset %"PRIu64 ivshmem_flat_interrupt_peer(uint16_t peer_id, uint16_t vector_id) "Interrupting peer ID %u, vector %u..." + +# i2c-echo.c +i2c_echo_event(const char *id, const char *event) "%s: %s" +i2c_echo_recv(const char *id, uint8_t data) "%s: recv 0x%02" PRIx8 +i2c_echo_send(const char *id, uint8_t data) "%s: send 0x%02" PRIx8 From patchwork Fri Jan 31 21:05:02 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: 861016 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929058wrr; Fri, 31 Jan 2025 13:07:15 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCV+6mHDJDa7t1dD2uLS1oB45q0lg69TZ8lgpTM4hfet9FeLc4vcbWGIe02j921+YGXvtigVcg==@linaro.org X-Google-Smtp-Source: AGHT+IHMSQGgvIc+LtTQLHbIHIyjbtbnSWQeZNPGC2ZSv18iAlUgpmQz2L9oA/gZ8CgmA73ceLhF X-Received: by 2002:a05:622a:d3:b0:467:67d3:7c8f with SMTP id d75a77b69052e-46fd0a203dbmr176213451cf.21.1738357635231; Fri, 31 Jan 2025 13:07:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357635; cv=none; d=google.com; s=arc-20240605; b=h8Z+uu3NkozPgWkwN75xQ649UYiwe5GEPxF+OtKL/yUuXdOBL1nJLG1Hq3YH4UXRMs 2E72CJkeojedfa9i2wLDZB4e97/1JbiyDUBatJw6RyiCtGBjLi7F5WXY1V2nA+EduyB6 ZgpqvWd6oRYxd88/qO0nZuW0NP6FjukK8auP+WRblqntRhGdd5EDIcu2nOZ53brpmDfi 3RV7kXLdCGpqTAsxcNWdtYecSucWzdiphMvXly0e1LQC8/+lLRz/+hLric8qgKAxAHeX oYrd/Ldl6YGGa5ioFYpTqw5j2CCED3IZVqIAj2eOymlsd8OtRxWJYsX9pgaeEJ42ahH1 DTlQ== 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=YDQ5LJGo9o+LKPmuD53dLkja8+w1xu30AF94L0IcYX4=; fh=sNndgpYEfRWcDfiBFyAPz1l8uEJCSliozJZ/CeRJSb4=; b=QkCjtjdggl/sXMvzZOczCzrnSZAs3pPUi/g8VpvtyO9nORq6kbwxLXRJzy3tsQ4aGK d9bM/SNrvXMQYBfYfuXhhR5IjV3XnDNXSPXn+75hWd/L5LBoIkfT2D60IUGjrcjUZnsm p4Uc5+3/gj5RFLjnEfCs2J/SYOS6fUMiyKb+Ffh9gSdLlAXoaxcWsT9OtWFtWOrLItVX 9vvbAtVji5ncNGw2Ja4DH/l2iYbSz3NSynOwgIs4sDsv5sem8Qq03+scyDU8X9g1Efp8 BSA+z/TU3mr0gGrRhfT235axQtAdHpML1CCQjdW/e1PYCoeu3gxOnQ15Gs9DcreSL6Eu yIaA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=rsSXQjCn; 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-46fe308e63fsi38401561cf.592.2025.01.31.13.07.15 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:07: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=rsSXQjCn; 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 1tdyE9-0000fN-LL; Fri, 31 Jan 2025 16:07:01 -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 1tdyE7-0000Yu-S3 for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:59 -0500 Received: from mail-wm1-x32d.google.com ([2a00:1450:4864:20::32d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyE6-0007uP-8b for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:06:59 -0500 Received: by mail-wm1-x32d.google.com with SMTP id 5b1f17b1804b1-436345cc17bso18797515e9.0 for ; Fri, 31 Jan 2025 13:06:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357616; x=1738962416; 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=YDQ5LJGo9o+LKPmuD53dLkja8+w1xu30AF94L0IcYX4=; b=rsSXQjCnGFu1kqXcJ2BmFF9YLAGRlVpqxtLQWnWSSb15rl7E1FX3bYj4aII9gbiNow MbLLr2jkZkBPFiOHoa2R39xLfqXgTGU2u8yITFQH7NSXPRLUr4rNoGDT8R4P7XJodorW u7n3QGBxeJrDgPgOiawxgXyNVKpiCkw23DGvc5TsvfMuUk7Tq9vK5v6tlu/um/iLPIj6 gQRo+y1y+LVHfYDsdPmhELSzPjoxhZUlpBTxRSBptemyobD9udnHwg0T0I/V5SdaqUg/ ntauMPgu6iKtWhWOg2ODFWrK2OjEwfKbutDSXBa+gAVW0prlBZ2meYHfNb5PJIbAvmfU h4CA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357616; x=1738962416; 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=YDQ5LJGo9o+LKPmuD53dLkja8+w1xu30AF94L0IcYX4=; b=shWpEPXMKLxCWXzEHBawY43ksPAScJyGfrwkrD1SKumPvb5JODSTFGYHef4IDjckaB l/qD3mTa9jSv59LARKx/kGNMu3HlfOBFDzT0+CKU6BbkB3YftqDWAy7qxweJ9et4Hksv u5h8DvE7oojWeKj/oYqxnSQJftYv+QHxCJ0uC1pWKES/wc1sIMg7YylcLqj9aFJ0QHN/ GE47Wvcm3mwmQEU3F0rPJr/Gq0KUrubJeWXtp3CLDW1H7z94xKA5rD0HoZH8s1OtmWXo qjR+WR932BF8AxTwn+BtB5bPiKXfZtJ6RpsUZfpBY1fktGrp1gDp9Nf8Gq4k366zmllq l6vQ== X-Gm-Message-State: AOJu0Yw74TIFyHRZjfVMCrMQbnVd2OgCBEdxprIXrJbvBriZpY4SzQwh jY9743bVNprPGFPZTylm+f88xZzbn371EGum1x4FccA5uCnGoL9I8LWJIBeB4V/tUhnG0xeqeFK ltuw= X-Gm-Gg: ASbGncumlzbuIMenVICnWSvRTu/09FInMFOOvZ+nMArzBtd+ZdA+1+ZVRwcniDaphj7 PpWtXyA0AzLk6S8hNO9TZhJK7ZokCFxtxlkKFXo3V+EB1nSyIQIjZ0JkuzABsahazAlayMxoyRM MwOZkI0Pgt4y1qTsnoaknaQAtB5MM2lLWAcEdzTfAdrm/oLKz76F4aT8k6/7NYnyk8UVZBEDK8B rlesFRXRhjS274uHXn8lAxvVzC5K35UITy3XuH3YL7U3m9WfNitmz5oFcb2Bcy++U76NtZIV9io tEF91vBftBDdNQF9VKpcsObJSVmW1A2fjflR/cVcWtzS83Gk62WPikdiQ69Aviu0PQ== X-Received: by 2002:a5d:6d8d:0:b0:38b:ebcd:305c with SMTP id ffacd0b85a97d-38c519698e9mr10751541f8f.29.1738357616312; Fri, 31 Jan 2025 13:06:56 -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-38c5c0ecc80sm5707516f8f.16.2025.01.31.13.06.55 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:06:55 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: BALATON Zoltan , Peter Maydell , =?utf-8?q?Philippe_Mathieu-Daud?= =?utf-8?q?=C3=A9?= Subject: [PULL 19/36] hw/usb/hcd-ehci: Fix debug printf format string Date: Fri, 31 Jan 2025 22:05:02 +0100 Message-ID: <20250131210520.85874-20-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32d; envelope-from=philmd@linaro.org; helo=mail-wm1-x32d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 From: BALATON Zoltan The variable is uint64_t so needs %PRIu64 instead of %d. Fixes: 3ae7eb88c47 ("ehci: fix overflow in frame timer code") Signed-off-by: BALATON Zoltan Reviewed-by: Peter Maydell Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250124124713.64F8C4E6031@zero.eik.bme.hu> Signed-off-by: Philippe Mathieu-Daudé --- hw/usb/hcd-ehci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/usb/hcd-ehci.c b/hw/usb/hcd-ehci.c index 6c4c14c8959..b090f253656 100644 --- a/hw/usb/hcd-ehci.c +++ b/hw/usb/hcd-ehci.c @@ -2287,7 +2287,8 @@ static void ehci_work_bh(void *opaque) ehci_update_frindex(ehci, skipped_uframes); ehci->last_run_ns += UFRAME_TIMER_NS * skipped_uframes; uframes -= skipped_uframes; - DPRINTF("WARNING - EHCI skipped %d uframes\n", skipped_uframes); + DPRINTF("WARNING - EHCI skipped %"PRIu64" uframes\n", + skipped_uframes); } for (i = 0; i < uframes; i++) { From patchwork Fri Jan 31 21:05: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: 861034 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930239wrr; Fri, 31 Jan 2025 13:10:09 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCWkxY/EYykqaulyjXq+bvYoAPdACuOfw85/evZhnKp+k95SpXsRViyEfjbEqsjyP0SyNLg8gw==@linaro.org X-Google-Smtp-Source: AGHT+IGgCuKwUHv35oxREGVrPbuirZ8qWtYLy5N/lMADYDPtdXinh90mybH43CqhUqbRPDTi5wxh X-Received: by 2002:a05:620a:2551:b0:7b6:d710:2282 with SMTP id af79cd13be357-7bffcda112emr1908143385a.49.1738357809523; Fri, 31 Jan 2025 13:10:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357809; cv=none; d=google.com; s=arc-20240605; b=NBbiIrGTfUS6TLN5UZ6ah1AAqDNPWjCuy1XV8QOJglSTPL9Uy0+u6fh6qjNhjNoaK3 RTRe+9Mxo1I45ec/6ArSgMYJAigjHKARIo8vCtTuUx+YnVTeRzF7M7X/qg0SUEYJi05+ gv4koukPAVf/YBlwiulu8zAglfiM3fu96KSIDygvhNSxwYW/rphLmTxWGMU6J5FpzJ9T dOvYiKoAwqE859UWgwghfip6xpm9QsRgkaXRxDlpkHMFA2+cMA1XIQJWj1Vkx9XJfqNn AGAp8vHDbxdoz8lP+kZV0dOSbw1ALIdY0E+YJBZJIhPHm1g4Sh2WDpiqhk7rsZ/2/QO5 uSGA== 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=HmQOIAQmsmwo1mW3OC9lmlp6Q7vTxJ0LbXR7U7WGXSY=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=WoHHkumyygpy87JQ4FnvpyjJo6zmwySX8QGfiJYiwu8qxw5NSENstrE9aJEfl0EQk1 YeEkyBO8idcTjTygM/pemlpi7uTzSkc/sG2xP5Ev4fLjhSK88dx+ZPHX/7ojXESwoImz pgrGVVEziJIw2W3EF/D7uSzqO4aQKrU1ygpAzjpXhEaGnSYDi3KJJYlRmJfoMousyRQs zazlO8q/Mk88PLNLy0UJU+L/BKc8i63k6YkMoS6gGK/JUz122KLRxtJYbGWMUvTKuhsg B+WFQC8c53dK471Ne7u65V/2lBYTYiLlweGvGSLB8hFB2NMzvTr4Y2Usqh1sNw3KcpwK f10A==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Qa1weYwO; 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-7c00a8c0e38si493915085a.39.2025.01.31.13.10.09 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:10:09 -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=Qa1weYwO; 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 1tdyEL-0001CX-Kt; Fri, 31 Jan 2025 16:07:14 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdyEE-0000tP-Pa for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:07 -0500 Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyEC-0007uw-1W for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:05 -0500 Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-436281c8a38so18009295e9.3 for ; Fri, 31 Jan 2025 13:07:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357622; x=1738962422; 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=HmQOIAQmsmwo1mW3OC9lmlp6Q7vTxJ0LbXR7U7WGXSY=; b=Qa1weYwOWhcIZhaSX6JvkwQRGqNqLdGI1Uhu/foXmIHY1cNKfymivMl99AFT5TVcuV 8iPt1Kw+9xgYHK3Ox3S4tEMzidhUu7FHYP7bjgiE0lzMbFmaZalbylxaIbnYRTtfq1wp erdyz2hfwDtIRWugUotlJKaI2+9fVy7DuxRBb22W7VgagpIw4Yu8/eeVCZwpaliUdM7v j4UhODb5joISng48p4KmjIa3ok4nNZRP+AaLdu9qa+gcKuDDmnqYElcrsqfACN6mlsep WyyOWE012CNVwy7mo0+7vyPA8WixWxgnzo+gJ+pfvktcNAZHv7/mpfgDBAx25epUnnel 6buA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357622; x=1738962422; 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=HmQOIAQmsmwo1mW3OC9lmlp6Q7vTxJ0LbXR7U7WGXSY=; b=Hy939Flm6WF1JPJQAa9KMHH+mRkIYDqySZMeq2rmdCYDASn5X8FWpYjAguMvsXRUlM fRhNTp/1pmdNlzPau8ak7/obZaXtdRJ83Pyil89E+sVEQLkw0ucULv8AAtGs2eFHv/wK sdKcGwUcLMm3vwaTW8677xUDqp5bxAtvaDza3LBUFbKflBKCISfuIteVaFthVj8tJNNX m61WEcJPZ7vMgEhUm6t+xCiFdfTPvnW6841DsmNi+uq/myOmjuc/LOMtgPnM0s7FpSkB v/6NEc277AHDCLL3nHCUik60M0TTGldBXmKGiKpFvZ3GgREy9c0Gcxwy2138VT864ovv bAaw== X-Gm-Message-State: AOJu0YzHrCyi9fbGzCrawGyvcfnMuRcWkRXt/1L9BKNax+u++NpnAt91 mxkU1hHn0U6AJUPEFulo+YYvTuosYYseEkTHuBWUlSl5TuWOkRzZRnGQTBXJWhykc8LkVeIbNT0 p/3Q= X-Gm-Gg: ASbGncuwswr676J5SUUhZwF6lgfA9Yy/L/2EbisdazO2PHhEh5HNpCsUlZjohK/o67r A1znkmMCjRoz/pgBPB4l2pe00qY99cB3EvshOOvdzB5oIZ0YgpsiLvWf6Ldxo5/qK7/lflZPBqh uqU2NwRjmG7BJOdSmlxBJBLpXXEdnVy0f//BcCRgFWybDMwTZDKaPlE9wnlAm5eBRpuCRZE8oBd Md4v8o8Al0S7/zl2Op51u6YyV0HIkg9zWKQvGPX86U2+YpXuW8aO28bsq4p/79S0eokgn2lq2d1 8tF5xXcAKzlM219a5rfcGVbIhYAj9miSsZkOChFFG//pgtT8wkRNwNIEY4z8T9SWYQ== X-Received: by 2002:a05:600c:3155:b0:434:a5bc:70fc with SMTP id 5b1f17b1804b1-438dc3ae116mr120786475e9.8.1738357622346; Fri, 31 Jan 2025 13:07:02 -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-438e23e6b62sm66430035e9.24.2025.01.31.13.07.00 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:01 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 20/36] hw/avr/boot: Replace load_elf_ram_sym() -> load_elf_as() Date: Fri, 31 Jan 2025 22:05:03 +0100 Message-ID: <20250131210520.85874-21-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::331; envelope-from=philmd@linaro.org; helo=mail-wm1-x331.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 load_elf_ram_sym() with load_rom=true, sym_cb=NULL is equivalent to load_elf_as(). Replace by the latter to simplify. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250127113824.50177-2-philmd@linaro.org> --- hw/avr/boot.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/hw/avr/boot.c b/hw/avr/boot.c index 617f3a144c8..6a91dcd12d0 100644 --- a/hw/avr/boot.c +++ b/hw/avr/boot.c @@ -71,11 +71,9 @@ bool avr_load_firmware(AVRCPU *cpu, MachineState *ms, return false; } - bytes_loaded = load_elf_ram_sym(filename, - NULL, NULL, NULL, - &entry, NULL, NULL, - &e_flags, 0, EM_AVR, 0, 0, - NULL, true, NULL); + bytes_loaded = load_elf_as(filename, NULL, NULL, NULL, + &entry, NULL, NULL, + &e_flags, 0, EM_AVR, 0, 0, NULL); if (bytes_loaded >= 0) { /* If ELF file is provided, determine CPU type reading ELF e_flags. */ const char *elf_cpu = avr_elf_e_flags_to_cpu_type(e_flags); From patchwork Fri Jan 31 21:05: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: 861028 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930041wrr; Fri, 31 Jan 2025 13:09:43 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUXwowPhf2HAI4V6qKM43AWi5MG7w7Val4lQyk9CfGX7LfoA/wTUYM3TsZnw1IN89pVuaWXyg==@linaro.org X-Google-Smtp-Source: AGHT+IGwjCX8EBl7mNhQ+ftw1wwMcST25FjHCbN7wcYmTsWsExB3kFjM6q+X0HfvNlKEm0k6DJfT X-Received: by 2002:a05:6214:29ea:b0:6d8:80e8:d567 with SMTP id 6a1803df08f44-6e243c2b69bmr207146866d6.18.1738357782806; Fri, 31 Jan 2025 13:09:42 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357782; cv=none; d=google.com; s=arc-20240605; b=BA0MkgqFciqjQtIMX1R0UANM0HNTEJHR81EJNZ7/Oyn9hz0kqiOiKdC18le6aSMNph GTbOD417DfmbZLJMbCOEoguMVwSfepwyQRBCY1w+56tNnHsqZx7f6C5Q5Xwnxf3FAyb2 pppBGV7ihV9aP4XKB/U7/QCOFmDULM/B4thbNmUDbNq4jIKo8C9aNnt4R0ai05mRx5Ta Tio7JNFdzPt+inAit+P++dXkb+HZNPKBNF2pp/i7D1hECqqcxa68qVJBv7Tjit1L+93Y UNQnMT5jOwdbReHdx/pcIg9Z11otLM2pVJnQ56L/hybcA7e+f/MQRU+1sxrxPjZ0TU5g WHAw== 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=j8FUzDdCW0bQyWxAQmrQ+3uNWdzAhUBa/G3VnWeo8GM=; fh=zm9GEwd9Zm8pGstmzedGfamov8flIGVi52cG9DQ5Sz0=; b=WJWoVIT2FohRKJES+pgceTLmAMmREAeGyWWv9k17wioJzrbJGYjfFwCX5JJFIowbu8 iJtNZYf+ogTrfHYEVaLHGM9Mssxd2FPyBbLNrXz5bKSQwHxUDwUvabn4YZwcCbbSs/m3 rQoMdNtV77VJWnG0TRqIOtlaczia5s8r+NhgYj+Cm7/XHbt8/LaKbjZfQJMd3MHK5JVr bezR1VDtKCfRHGvjybgVXoh1AzBJhAIctUJDg/iFH5fbs0re8f9tmn8GVz1zC6VDaq/h YV049Ubfoallzn8784dCvyNzOvT5GQDpNHoDMt0+PDGEvS+3m2RHbGGFX/MB5eaSkroG OmRg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=lI2fLE6i; 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-6e2549e3196si44826666d6.487.2025.01.31.13.09.42 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09:42 -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=lI2fLE6i; 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 1tdyEQ-0001Rh-Vp; Fri, 31 Jan 2025 16:07:19 -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 1tdyEL-0001CW-2q for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:13 -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 1tdyEG-0007vW-Jg for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:11 -0500 Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-38a34e8410bso1264407f8f.2 for ; Fri, 31 Jan 2025 13:07:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357627; x=1738962427; 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=j8FUzDdCW0bQyWxAQmrQ+3uNWdzAhUBa/G3VnWeo8GM=; b=lI2fLE6imWo5IQxv19UGTtisE8RrMo8DMUse1AFjOCalUwnS9VR79KLgqIIAwDYMJg OWBy72apQyx2VjmgfmrM63pnevWnqpT6vPC9aOWNUsN8eHOYMLvj1a6eVlVI4isRhxl1 8zvdeu+tmsrLcJaD38SopkapEz274VHTbNTVmvUNUFiJD5UFr3xMTRq6SIDYtlsAPiMl W1YO2ZMcrdDwuL7zfhfTWgtL8Xjd7MiNbUG9oWY/Uc9Gvr9qs8KSV9Wd796Hf+mNr8hv Uqlrq6xeTy7GZNaBb1p0Q9y32M79tncc2IeWkZxD2NTtmqZcmC6gIuXC8VQgR9Nogg4i eFsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357627; x=1738962427; 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=j8FUzDdCW0bQyWxAQmrQ+3uNWdzAhUBa/G3VnWeo8GM=; b=bRzYi+nC+w+jOhvPjKSxX8vXpNEGexRZJFLIRgsFD6Kp1KKemvPoKVvUaaQCwYtkVv IdSFPxoQ/8BBrxG7Z8AOsH4rnW23IwvsuWCzfs5Y8HCsV0cy3ygia6OisRxPliTVOQlb E0GfyLjP4HVbJYEP9J1HQ/3VeuDwQ0rS5ZnmGeY0ewzZT3atF1DRtGFcPfkcjBh9MNzx Ta/9gYIiKSaGxex9FuYLZoPw+TpG+JOMjN9F32aQh709/lJp1ieF3F9r0fx+xmUVVjJd SkV7o+uOkGNkJUyJvXJryCZGgDarDVtHDaECVgiaV4hPjsPuBclho/pRe/MIZL6jWvX+ 1oJg== X-Gm-Message-State: AOJu0YzWhDLC7D7dCXILAcxpSDR+ZeYTl8XncFl3BihyD3A/qen+nffz AQS6CI6gc3Wqfp/z/a4OQpQBC3jUO80O40pxI+2/fRVzRbn0dtqemq7SgYtW9IVStcGHweZ6dUV yjs4= X-Gm-Gg: ASbGnct3xy8+X4CKzlQ4uaUHnM8CZVU8Wz/JQF02GFmAlriT6a4w9BrA59IagoFLsnK F/X1d7FWL/L6l337GmWCea4KYxRiy4SjfRX03quHOxKOyuNPCtV4FkpKm6B+K+O0NbKCrw79XEx 6S4kmcOq3Nap+yEgipUkfjXVeL4NTV8fK1JD74hitzFLxJBnVBwwoGzNwYvwEACWJtCUWVrn11s 8oRk+cOo9IEzdxHRPuV4XtvJK3e8PR02F6iukZe/17MSwWab8CmUDliMBJ/diAZiVjdw+LFX85x 8P9K1lyaISiAu4ZiQ5Jdfp7cNombmDdnDdB/B+LsNNculo/qtxrWBigMafVXfCJKPA== X-Received: by 2002:adf:cf06:0:b0:38b:dc3d:e4be with SMTP id ffacd0b85a97d-38c520beb5dmr9219813f8f.51.1738357626761; Fri, 31 Jan 2025 13:07:06 -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-438dcc13139sm101495425e9.3.2025.01.31.13.07.06 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:06 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson , Alistair Francis Subject: [PULL 21/36] hw/loader: Remove unused load_elf_ram() Date: Fri, 31 Jan 2025 22:05:04 +0100 Message-ID: <20250131210520.85874-22-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 Last use of load_elf_ram() was removed in commit 188e255bf8e ("hw/s390x: Remove the possibility to load the s390-netboot.img binary"), remove it. Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Reviewed-by: Alistair Francis Message-Id: <20250127113824.50177-3-philmd@linaro.org> --- include/hw/loader.h | 14 +------------- hw/core/loader.c | 16 +--------------- 2 files changed, 2 insertions(+), 28 deletions(-) diff --git a/include/hw/loader.h b/include/hw/loader.h index 8985046be40..9bb34e6f062 100644 --- a/include/hw/loader.h +++ b/include/hw/loader.h @@ -155,20 +155,8 @@ ssize_t load_elf_ram_sym(const char *filename, int clear_lsb, int data_swab, AddressSpace *as, bool load_rom, symbol_fn_t sym_cb); -/** load_elf_ram: - * Same as load_elf_ram_sym(), but doesn't allow the caller to specify a - * symbol callback function - */ -ssize_t load_elf_ram(const char *filename, - uint64_t (*elf_note_fn)(void *, void *, bool), - uint64_t (*translate_fn)(void *, uint64_t), - void *translate_opaque, uint64_t *pentry, - uint64_t *lowaddr, uint64_t *highaddr, uint32_t *pflags, - int big_endian, int elf_machine, int clear_lsb, - int data_swab, AddressSpace *as, bool load_rom); - /** load_elf_as: - * Same as load_elf_ram(), but always loads the elf as ROM + * Same as load_elf_ram_sym(), but always loads the elf as ROM */ ssize_t load_elf_as(const char *filename, uint64_t (*elf_note_fn)(void *, void *, bool), diff --git a/hw/core/loader.c b/hw/core/loader.c index 4dfdb027eee..ead10fb6cb5 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -425,26 +425,12 @@ ssize_t load_elf_as(const char *filename, uint64_t *highaddr, uint32_t *pflags, int big_endian, int elf_machine, int clear_lsb, int data_swab, AddressSpace *as) -{ - return load_elf_ram(filename, elf_note_fn, translate_fn, translate_opaque, - pentry, lowaddr, highaddr, pflags, big_endian, - elf_machine, clear_lsb, data_swab, as, true); -} - -/* return < 0 if error, otherwise the number of bytes loaded in memory */ -ssize_t load_elf_ram(const char *filename, - uint64_t (*elf_note_fn)(void *, void *, bool), - uint64_t (*translate_fn)(void *, uint64_t), - void *translate_opaque, uint64_t *pentry, - uint64_t *lowaddr, uint64_t *highaddr, uint32_t *pflags, - int big_endian, int elf_machine, int clear_lsb, - int data_swab, AddressSpace *as, bool load_rom) { return load_elf_ram_sym(filename, elf_note_fn, translate_fn, translate_opaque, pentry, lowaddr, highaddr, pflags, big_endian, elf_machine, clear_lsb, data_swab, as, - load_rom, NULL); + true, NULL); } /* return < 0 if error, otherwise the number of bytes loaded in memory */ From patchwork Fri Jan 31 21:05: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: 861019 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929393wrr; Fri, 31 Jan 2025 13:08:11 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCVevPcRRvJdu34tkrevme9TlQlnXfJN5Or6d8xkH8l+jIftZ+mmXTqsABtngB6gynwBS/ssyw==@linaro.org X-Google-Smtp-Source: AGHT+IGx4Zj/wHAJno4MQl/ZN2v/nEpDRGBGlMktnRi3aYM2XR+qM3Z20yiaFhDsIo/BcKuw5XPO X-Received: by 2002:a05:622a:1985:b0:46c:7142:14c4 with SMTP id d75a77b69052e-46fd0a1d189mr218585821cf.2.1738357690846; Fri, 31 Jan 2025 13:08:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357690; cv=none; d=google.com; s=arc-20240605; b=gwJiS4yoQkpJ4qIxBjc+CHhJRtI4rLigEdVCseLkqqq3xmwF5y6PsVV1JZyQ0bjADS v2IpwlE4rOAdQqu3wFUvFg5/PEZmpBdggqR1z2iip9IW9PlU7X6OKK3zK//WTdvpPevm 8L1QtsaXIZWTa6GwH39XEaeQ7GB3revG3v43HE/xQ1v2BbWNMytmVF7fiYTA/VvyGjzB bCTCd6V0wztqRjlQAbNRUU45xuSEqH4kxMowYfQjrO35brgdXmmwRHdMEn6dLYBjRFWv KqetVekZnJlm13WIjok2RmNsQj3H/A5Uz2nOwxR0I2SCfkGxf0Dn4OwfZK1UmTK/UR81 B+EA== 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=5dBa5vP504u7Bs/d2VQaxQJTRjHJp6RrrnCJ8DKVHjY=; fh=0b3CCmAV7w1mDGxVz7rXdiZnST+WX+p9UCP4S9ijK74=; b=Ay8YEnOfT39nK0gjnW2/ME6+piozxSWXskWFi8tx50aBjbIg5DBImW8xTzDmSm8kfY O5OgBQMFdvTJe+md6kBYmFZ8qZBpBayCwJlpv34THvy/AVyjH4Vxqvt09bTM5fhJjWmP lY/1k7YXCa96xHHdMMieId46OutTWMjPeQ4GjP2SMj7Ml0kxIm9S+btnpBAor5E8fxx0 SNaDCSOt+BI+cLiucqQoU6ZfNogp5cG8vVhn7GMt68C1qeYI8jsoo/3vvQAemXPffPMP PZfn3UJbnRpQFZYtO8l4ZEfvCiucLzZUSvtoldMPD3AJO2yz1Ij0BGPrZiNSuUrhNAoH GsLg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=CpqGAAB2; 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-46fdf0d4952si46061411cf.150.2025.01.31.13.08.10 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:08:10 -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=CpqGAAB2; 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 1tdyET-0001cl-CJ; Fri, 31 Jan 2025 16:07:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdyEO-0001L0-5M for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:17 -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 1tdyEK-0007vm-VL for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:14 -0500 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-43618283d48so18729465e9.1 for ; Fri, 31 Jan 2025 13:07:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357631; x=1738962431; 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=5dBa5vP504u7Bs/d2VQaxQJTRjHJp6RrrnCJ8DKVHjY=; b=CpqGAAB2A619HeF0f/zbxjVu3Ogf0FzlA7qg4G6Ty0ZXu2x831/3vlQRcr0l8mGsSn r0jUZ8R1m/wYUIpTTUjG6U/8DAkcnIqzsGxGaS0BmqjpWrLLADlF29SMXnGboPb/Jl+2 8ntISXx3puZcpU+npvdOFed4pWQG6z1/YhX2dgWa/nWXc3yt4FC5dsJwh1IUcD0yRd12 I5uptMp3av+F/g/uVyo2N52WM9Gaf9nFmcZ9HiTFq/Qrs4qD190vU3BWcPqA/UBvqdTw kleQ5Muq4/G/afPRF9/kNNW/Qwdw/V1JkcBUq+uw6uq1zXzVmO2x29JxCBD+z8SAL8/W MBmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357631; x=1738962431; 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=5dBa5vP504u7Bs/d2VQaxQJTRjHJp6RrrnCJ8DKVHjY=; b=RPmswBd48mPFhGCJ8d9umozhvRe+V4nPv6TET3ob3lGIWBLZSavseVuYfWbNtxoGRS n2gTz2pQpnqu/ajSVM0ZISJtmEL2tJGY4K48atAXwSLpWitT2JiZ+ZXYlIwWuYYIjJqz O0QqiHKHfJJyFC2+fKepV3s0E4l6jY+5Z3Kv28IFtNfrWucRVhhjv1jY7U3IlwBDprgS iKddPfjBdBuaFbraFEWcWyyvhBX3uSLdiejRUVpExcbWj7anAiklVx2y7iGNT116vKql poTyYtr2VfQUj907b2eCfWWkvmVyYYEu58X2JiCGz2/yaep91XD2+qhKcT9X6saGbEtZ sBNw== X-Gm-Message-State: AOJu0YzmuiIg9VQ24+srmS8OqmHtgNlA/NWipn2Rd0fP7Bl6uoRNBb1K wMfEeSULg+UQkYay7ikrLXFHzuxhjMJx61tHSZyman70aDvBazSD1zvOvMvLzapDOnv46o09rvM mC0E= X-Gm-Gg: ASbGncum1ONBoLy9dFsWB5q190pPdIUeIlRlD6LpvbvWBPGp1AsJ4+hx0KX8DuXcYTE I9+KW8raeARpV7WXStpDQPaFNlrI3KZZUXbftBJcuvOEzbeeLdx+l4L90w8WO5BoiVXG0vDKUIk HXRUSNyAcrR3vdJ9GMMdI7t5WYFdWyzrUKYl28u6rIuTJ1D2Xoa90pvp2t9qNzeIOYQTyx5V8C/ 3rpIivtD7968oNuLRoy/au+ntqu1zG5NrPy7hTD3KmcPYxSENN5raYt5NRY/Uz4FhLFpcPLOTNS wXzjA8/YRF1V67rp2yrav4/hDbkflYBKkbAL4uQV/KL1rDWyGMK/UN6+feYZub4lew== X-Received: by 2002:a05:600c:3c86:b0:434:a529:3b87 with SMTP id 5b1f17b1804b1-438dc3c2413mr132950885e9.10.1738357631266; Fri, 31 Jan 2025 13:07:11 -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-438dcc81d74sm101782795e9.37.2025.01.31.13.07.10 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:10 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , BALATON Zoltan , Richard Henderson Subject: [PULL 22/36] hw/loader: Clarify local variable name in load_elf_ram_sym() Date: Fri, 31 Jan 2025 22:05:05 +0100 Message-ID: <20250131210520.85874-23-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 load_elf_ram_sym() compares target_data_order versus host data_order. Rename 'data_order' -> 'host_data_order' to ease code review. Avoid the preprocessor by directly checking HOST_BIG_ENDIAN. Reviewed-by: BALATON Zoltan Reviewed-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé Message-Id: <20250127113824.50177-4-philmd@linaro.org> --- hw/core/loader.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/hw/core/loader.c b/hw/core/loader.c index ead10fb6cb5..de6b173f4a1 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -443,7 +443,8 @@ ssize_t load_elf_ram_sym(const char *filename, int clear_lsb, int data_swab, AddressSpace *as, bool load_rom, symbol_fn_t sym_cb) { - int fd, data_order, target_data_order, must_swab; + const int host_data_order = HOST_BIG_ENDIAN ? ELFDATA2MSB : ELFDATA2LSB; + int fd, target_data_order, must_swab; ssize_t ret = ELF_LOAD_FAILED; uint8_t e_ident[EI_NIDENT]; @@ -461,12 +462,7 @@ ssize_t load_elf_ram_sym(const char *filename, ret = ELF_LOAD_NOT_ELF; goto fail; } -#if HOST_BIG_ENDIAN - data_order = ELFDATA2MSB; -#else - data_order = ELFDATA2LSB; -#endif - must_swab = data_order != e_ident[EI_DATA]; + must_swab = host_data_order != e_ident[EI_DATA]; if (big_endian) { target_data_order = ELFDATA2MSB; } else { From patchwork Fri Jan 31 21:05: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: 861038 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930473wrr; Fri, 31 Jan 2025 13:10:37 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCX+WtkQYb+nSNukF6qSsoAxxlHEUug+xeXxoYluKcYq9DIVIYNybnPI382YkoG0OZG9eGUW8Q==@linaro.org X-Google-Smtp-Source: AGHT+IEO2jUihOMi43v63hPOaduQCS6KyPl+kPmMgV5+JfDf5ZevlB1aJh8DnTKHfVQi0ii3NZOE X-Received: by 2002:a05:620a:278d:b0:7b6:f143:44e3 with SMTP id af79cd13be357-7bffcd09c2fmr2254565985a.32.1738357837674; Fri, 31 Jan 2025 13:10:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357837; cv=none; d=google.com; s=arc-20240605; b=HDS6Zg6veyXN7AtkN0BYJWVXvAC7ecxC3Fiy9cZIKIA19yNXZJyOCrbrrk+U/EhrPE zUBI/NRVRh/Tj64ulk/RpeuIYKSCao2zi3ZnJ3LM4Vpvf1dDqmszbBjzt9DCejPESqno qwFugfeXDk/YqYjNc/Hk3ktFoWjEJISvIHouyJ9yUbWbBM0e/hyz1BFHf9dUv7yUohbo 4WlsD1jaTDi7xEN/prCwm4YN5qbp33JrH9zaOHwg4tMdlazEl4NovS316kxqp1PIKp3a gtfwSPUyYN9vS6bqVWuq9OrQ6kX0JdaI/WJFiupR/NbWyDwJVMwCAJqgKvzat4HgtekL wMnw== 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=FDK+q3FCrguxF8M+fgJqjkVgEsMKiL4tl31vLqfa+ps=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=CyZEMSZAVPJeUBrfivhnlk6mdPQ2LqVOiHgsh6BiMxPlfJD0Yl+Cs2n+oXUzO5fYvX AD77gvjj7xaNoZzZ6BxeWWoWK64bBoGkJHj7qvQdZDyb1uYQNmYaNuisE+ITEZ/2hy3B gAX9XiGG/aq9NsoaRMPqrc1OH0LNebWnT02kHBRMRzqm1jCuDokwhi5ODjuddRmNstFd fVCAbTvYnG/QBS1mQcOO43CsONmsXDMAs1nQw/r+OsPdqbJUntve/RdZu5g5iPaSmgY2 1/Yc4NKo/VC+nv8vLvq0PbiMfB4OcxGbfWu6AzBKcl9JnfcMr7KIsOK9Iwl1K16PmRmy AKFw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=wV2qjLXW; 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-7c00a90eeb7si498591185a.459.2025.01.31.13.10.37 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:10:37 -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=wV2qjLXW; 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 1tdyEV-0001sP-JN; Fri, 31 Jan 2025 16:07:23 -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 1tdyET-0001e2-Dd for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:21 -0500 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyEQ-0007x1-Vl for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:21 -0500 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-38a34e8410bso1264472f8f.2 for ; Fri, 31 Jan 2025 13:07:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357637; x=1738962437; 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=FDK+q3FCrguxF8M+fgJqjkVgEsMKiL4tl31vLqfa+ps=; b=wV2qjLXWgdyBYf1Xdhv0TwNo86lZWLW48XpYYW0Z7PIII7dGQJmvq4ffpCHZVJo3yC VEFKHG4w0ezDSAZerWwo2rQZ8ECgbgFiY7uPzMHUgvWq051NY2r/zQ37opM2lT1vt922 7Wl1/ylpzuEHObEMqQ5iVXZXUTuWhp0hCXB+zFTxCnFx/UjfasYG0XvV5+MbxvOq2yzd RdV+0BpJJtDvKD4gX95XGOcPVan9wg40ifldm4IQimLsVoEROjUZbD9AwS5bb9rOcAl2 zwnRkASUO1XiXcJfcrEXG5dQIcVFQNd+LyJKkm+E8mmk9uDlDPAVwJVSMl9WgWWPnSix r44Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357637; x=1738962437; 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=FDK+q3FCrguxF8M+fgJqjkVgEsMKiL4tl31vLqfa+ps=; b=sZV7V7M0rvBHk6Qzjy8f1lFRELqAGi8QiwNz7Wni6AgCvXDelf5jQPrJX6vsu/S+1h /Tj3GYRqw1WmJVQQV5AWWzRkAV2/+cPgzjdoB7LybdxnxPSc0G8JaIORvRKfGKurWCIt vJ5tJN7V8kjP258bMRAmUUzq7acs0X89P6PZHNZLY9CX1H5hYWdmrOEnmzdncwvH/8XN 8Pi8AN6FZZMiNZ00Q7R5r1Prena7QWPnlDRhN5+SLWucgJow2RWE5YxRyYYFOcUbh9Tc pBhz16j8ZwQ28NaBoa6AuMQTDtQ2KakF0m5x+nNLmoATA766ORXw47D4aAAEzstoUbe2 THGQ== X-Gm-Message-State: AOJu0YyZGkkyZAp7+/uzptdiKjC8N3ILA5gxTsnpVSbfKbM99oT1qzkc hUi6PN7Qw4GZHWxBzLtoM3aLv1IAgDIU/VkXTkWgUWDKNBPbI0+YeVtm3GbK27S7dribyEDLR0+ l0Rg= X-Gm-Gg: ASbGncsxo09fN7Wt5zyBGT3h6icFqdWirI1pETXnCpL4ZD0oWwZo45gFuT1V8Poy7uk STngREJih7ENCtsOxU3ZpKS16hd1E6uWwL3i5AyOJZjp+U6btZpMFeU5ZGDgJytKQEtdYiO75bJ 53yYvj5eZ9cmSpoMzGGZovA5zzhgx3rMpnjdQeA0kCn0GlydjHiak+ddEtxpODORfJg4QticHdO G0rUXVaTQqAHkMDEbRwJpws+9x2itYGBFzfWBFJF3ThorthEBcSiWHCYY61bRSzdIXfAsWV05pC iRCz4Tev4JxnBb+VXzTeAEjUTfkPKCbLESEYR6m5fjdEKgC5lWCASPDtLhsJB99YtQ== X-Received: by 2002:a05:6000:e0a:b0:388:da2a:e48 with SMTP id ffacd0b85a97d-38c5197431dmr9361912f8f.23.1738357636671; Fri, 31 Jan 2025 13:07:16 -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-38c5c12191dsm5688802f8f.51.2025.01.31.13.07.15 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:16 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 23/36] hw/loader: Pass ELFDATA endian order argument to load_elf_ram_sym() Date: Fri, 31 Jan 2025 22:05:06 +0100 Message-ID: <20250131210520.85874-24-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::431; envelope-from=philmd@linaro.org; helo=mail-wr1-x431.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 Rather than passing a boolean 'is_big_endian' argument, directly pass the ELFDATA, which can be unspecified using the ELFDATANONE value. Update the call sites: 0 -> ELFDATA2LSB Suggested-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250127113824.50177-5-philmd@linaro.org> --- include/hw/loader.h | 4 ++-- hw/core/loader.c | 17 +++++++---------- hw/riscv/boot.c | 3 ++- 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/include/hw/loader.h b/include/hw/loader.h index 9bb34e6f062..8202c376043 100644 --- a/include/hw/loader.h +++ b/include/hw/loader.h @@ -120,7 +120,7 @@ const char *load_elf_strerror(ssize_t error); * @lowaddr: Populated with lowest loaded address. Ignored if NULL. * @highaddr: Populated with highest loaded address. Ignored if NULL. * @pflags: Populated with ELF processor-specific flags. Ignore if NULL. - * @bigendian: Expected ELF endianness. 0 for LE otherwise BE + * @elf_data_order: Expected ELF endianness (ELFDATA2LSB or ELFDATA2MSB). * @elf_machine: Expected ELF machine type * @clear_lsb: Set to mask off LSB of addresses (Some architectures use * this for non-address data) @@ -151,7 +151,7 @@ ssize_t load_elf_ram_sym(const char *filename, uint64_t (*translate_fn)(void *, uint64_t), void *translate_opaque, uint64_t *pentry, uint64_t *lowaddr, uint64_t *highaddr, - uint32_t *pflags, int big_endian, int elf_machine, + uint32_t *pflags, int elf_data_order, int elf_machine, int clear_lsb, int data_swab, AddressSpace *as, bool load_rom, symbol_fn_t sym_cb); diff --git a/hw/core/loader.c b/hw/core/loader.c index de6b173f4a1..f1fab3e91b1 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -428,7 +428,8 @@ ssize_t load_elf_as(const char *filename, { return load_elf_ram_sym(filename, elf_note_fn, translate_fn, translate_opaque, - pentry, lowaddr, highaddr, pflags, big_endian, + pentry, lowaddr, highaddr, pflags, + big_endian ? ELFDATA2MSB : ELFDATA2LSB, elf_machine, clear_lsb, data_swab, as, true, NULL); } @@ -439,12 +440,12 @@ ssize_t load_elf_ram_sym(const char *filename, uint64_t (*translate_fn)(void *, uint64_t), void *translate_opaque, uint64_t *pentry, uint64_t *lowaddr, uint64_t *highaddr, - uint32_t *pflags, int big_endian, int elf_machine, + uint32_t *pflags, int elf_data_order, int elf_machine, int clear_lsb, int data_swab, AddressSpace *as, bool load_rom, symbol_fn_t sym_cb) { const int host_data_order = HOST_BIG_ENDIAN ? ELFDATA2MSB : ELFDATA2LSB; - int fd, target_data_order, must_swab; + int fd, must_swab; ssize_t ret = ELF_LOAD_FAILED; uint8_t e_ident[EI_NIDENT]; @@ -462,18 +463,14 @@ ssize_t load_elf_ram_sym(const char *filename, ret = ELF_LOAD_NOT_ELF; goto fail; } - must_swab = host_data_order != e_ident[EI_DATA]; - if (big_endian) { - target_data_order = ELFDATA2MSB; - } else { - target_data_order = ELFDATA2LSB; - } - if (target_data_order != e_ident[EI_DATA]) { + if (elf_data_order != ELFDATANONE && elf_data_order != e_ident[EI_DATA]) { ret = ELF_LOAD_WRONG_ENDIAN; goto fail; } + must_swab = host_data_order != e_ident[EI_DATA]; + lseek(fd, 0, SEEK_SET); if (e_ident[EI_CLASS] == ELFCLASS64) { ret = load_elf64(filename, fd, elf_note_fn, diff --git a/hw/riscv/boot.c b/hw/riscv/boot.c index 90e75c69a04..c309441b7d8 100644 --- a/hw/riscv/boot.c +++ b/hw/riscv/boot.c @@ -246,7 +246,8 @@ void riscv_load_kernel(MachineState *machine, */ kernel_size = load_elf_ram_sym(kernel_filename, NULL, NULL, NULL, NULL, &info->image_low_addr, &info->image_high_addr, - NULL, 0, EM_RISCV, 1, 0, NULL, true, sym_cb); + NULL, ELFDATA2LSB, EM_RISCV, + 1, 0, NULL, true, sym_cb); if (kernel_size > 0) { info->kernel_size = kernel_size; goto out; From patchwork Fri Jan 31 21:05: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: 861020 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929443wrr; Fri, 31 Jan 2025 13:08:18 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUIVpL4FcgfupGhF8HcUhh+M6pUiovmH6sEzWCZqBdekolbxNaxqiK3MQ8wueodYO6wv6GN4A==@linaro.org X-Google-Smtp-Source: AGHT+IGnCHbv7gAawO4fM0F4WjF/jvFNVPjsv7f+3WqyJFI5IXf8fcNkIN6m5vVO0On3FJm8Ajq7 X-Received: by 2002:a05:622a:28f:b0:46f:cc2e:3b54 with SMTP id d75a77b69052e-46fd0a98f76mr195457291cf.12.1738357697825; Fri, 31 Jan 2025 13:08:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357697; cv=none; d=google.com; s=arc-20240605; b=NmfsWpUcVJGGrZNXpk+D/Xk8HiPQPuJjb9EoAyTlL/e/6ueWO31P/RhoxenOv8zzvS OtzkekH16ig+vSwBWGq5k878hG/KAZx97cTghFaQ5FFJCSV8bSvQDQbyDtkdtt7hYCQl CEr02XHe9tF/P3gZRijtOu1gCe74HsGGjk56cxIaQBTFhx8qHQjC1P4CDe8ghQkDThoE PkzNNtqLIWquemu+WVzemS5b/554PBcDec4yNGgb2oRNmEaNgn6K/mp3BVd85lPxv++l +Z7ZMZiLmd0IaBfXD86yllK8PVSH7nHeO43gVV7R1X6iVp8uzO3MZFU67GSA5+/R3wv1 QBvg== 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=dinpAx8ITAzxNXFcxO3+N8OMVR+J/iTRHlGIXFvtMes=; fh=qtn8prgQtzf5IzCNvLChUZDElvNECP6ej9YfjQeBz3I=; b=YEhduut6kgRuyQ7T0SN/jVAg4R2XOsrdGmZrBepg99YJwWJos//Zcf/XYxvu90JGLV +p2lRFvgyUH6m/QRgiIVnq5LjWIV0/TrE/+5Axt3F65kGk3Y9EDUItAloI6BIj8608ZB 0mYTDzwgLkrQ5FNnQDmNZEiBbG5P6ykaoxDaX5OSgooR8tbhQ94AXLiVh8e8XRJSHAge Ks8vrnVazS0nklD6EqBX7SeZAGom2zHtGf3hMZsACUjx/BQ3/KCFftzOGvKqYDwWSxr1 CFdRL7m2i9UJTLp1g/OFE4zy37TX3/PyrU8vSXSUoex3Hvxt33aCQKKpfGbtIUhnC1xR jObQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=dgGmBDHF; 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-6e25496ffaasi42973876d6.260.2025.01.31.13.08.17 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:08:17 -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=dgGmBDHF; 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 1tdyEY-0002Lk-KG; Fri, 31 Jan 2025 16:07:26 -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 1tdyEX-000299-5N for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:25 -0500 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyEV-0007xS-3Y for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:24 -0500 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-385eed29d17so1247775f8f.0 for ; Fri, 31 Jan 2025 13:07:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357641; x=1738962441; 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=dinpAx8ITAzxNXFcxO3+N8OMVR+J/iTRHlGIXFvtMes=; b=dgGmBDHF4Cv2hMkBmSx6xQ07545ZbUHSJMJM+uJOcq7GW5A8QIqenBi8UqLAM0ca14 yiBbFa/27jJQUP3vy1wWhy+ASwq0V4pZs5cwVgmQhcel3jMjRf/3wgQ4ahP2QT+N8WQF MYyjyTtKAFE7SjyJHW13dZ/u32vOa4lS7/zwnyRgwIy2vN5As3wL6qg3F4fgGUm2+NEf Dc8qGL2YZJy2cruQt6pCBza3Ghy8d9BiI0/Uo1h2v8ZAHsY8t/CQXY7+TYG3uNNS99YI gaXscgwGwzeEiZUPjzP3WHQY15wkJOUJFR1M5bVV6jl5WhWN02VZK/ibD6ez8Q30zEu7 BcWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357641; x=1738962441; 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=dinpAx8ITAzxNXFcxO3+N8OMVR+J/iTRHlGIXFvtMes=; b=WbzhNQ+dGx/p2Wzfom8+OmPbffpXYYyzrn5SN3ztO322E2R7eCUqSNHYvzvNv8rolW 2P7MNVw+U0THNWxnZLn+odTmGps77TCw2Dsmx+UEMkpDL9ry2STSywSWJmf/+uJi1Bqs uT9K6H0QVKFCsa8GG6nD7Y4jtFDB1Q2xZv3/Uu/ucG1in51qQ2mCxHfTRmeSwoQ0qc5j x6clYCTHqMT+yXvxOB48foiwZxDSXsqoRijORCJMFedxO3/DeF6cn+I1BQLp/YiC4OCa zXL+B7Lm3Jww5y9JGA2UF+eMxXXwwRyLx4JQM6Q2f5VGtuHRsFvr5aBoyHEoZUpjyjIz UfyA== X-Gm-Message-State: AOJu0Yxkj6DO/xuq7hh5zW5xD9LXFmqmz9e3bB1OLrcH5Lq8WysybA8O mna15R42gxODk3793xCLr65M2g3SuVr11XQfHxTWO6/DXLEd4PGf+IIgGO2WGCKKHpc+PJ5Vqqg Fte4= X-Gm-Gg: ASbGncunvWrmGLlUqMstkPXlfogOw5Qg2syNXZ6FHLzShOheXPhI5OyjkSJ/t4Z5U2v PZ+fs+8r74+u++FrkR5iJq7NFEEBtj1/4JaMr9t89biDCydYALh2P+v96pp71IlX1iKCIBbukMk uIWZghhN70Cc3B9DdkE7s+qn7KYQD0fjsNE1S8zwawUdz0cvJtBhk9EVDIWISMRZ6rQxWKmiG3D KOAOBGS8AtK1NNhABYj+mdw0Cx7OsxifktIjCewScfK8Z3fq+aBFqQwtaTfhwaBbGM9XOXPjlNh 10Hvg1cQMPPT/8vl1bMGMENaJOkkbVarlv43qSJkR9oQwfvWhdv+J94MPiVxsmWNNw== X-Received: by 2002:a05:6000:e06:b0:385:faec:d94d with SMTP id ffacd0b85a97d-38c520b69d1mr8822640f8f.51.1738357641297; Fri, 31 Jan 2025 13:07:21 -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-438dcc6df1esm102743845e9.27.2025.01.31.13.07.20 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:20 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 24/36] hw/loader: Pass ELFDATA endian order argument to load_elf_as() Date: Fri, 31 Jan 2025 22:05:07 +0100 Message-ID: <20250131210520.85874-25-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::431; envelope-from=philmd@linaro.org; helo=mail-wr1-x431.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 Rather than passing a boolean 'is_big_endian' argument, directly pass the ELFDATA, which can be unspecified using the ELFDATANONE value. Update the call sites: 0 -> ELFDATA2LSB 1 -> ELFDATA2MSB Note, this allow removing the target_words_bigendian() call in the GENERIC_LOADER device, where we pass ELFDATANONE. Suggested-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20250127113824.50177-6-philmd@linaro.org> --- include/hw/loader.h | 2 +- hw/arm/armv7m.c | 2 +- hw/arm/boot.c | 16 ++++++++-------- hw/avr/boot.c | 2 +- hw/core/generic-loader.c | 6 +----- hw/core/loader.c | 8 ++++---- 6 files changed, 16 insertions(+), 20 deletions(-) diff --git a/include/hw/loader.h b/include/hw/loader.h index 8202c376043..84737c05b8d 100644 --- a/include/hw/loader.h +++ b/include/hw/loader.h @@ -162,7 +162,7 @@ ssize_t load_elf_as(const char *filename, uint64_t (*elf_note_fn)(void *, void *, bool), uint64_t (*translate_fn)(void *, uint64_t), void *translate_opaque, uint64_t *pentry, uint64_t *lowaddr, - uint64_t *highaddr, uint32_t *pflags, int big_endian, + uint64_t *highaddr, uint32_t *pflags, int elf_data_order, int elf_machine, int clear_lsb, int data_swab, AddressSpace *as); diff --git a/hw/arm/armv7m.c b/hw/arm/armv7m.c index a67a890a33e..98a69846119 100644 --- a/hw/arm/armv7m.c +++ b/hw/arm/armv7m.c @@ -608,7 +608,7 @@ void armv7m_load_kernel(ARMCPU *cpu, const char *kernel_filename, if (kernel_filename) { image_size = load_elf_as(kernel_filename, NULL, NULL, NULL, &entry, NULL, NULL, - NULL, 0, EM_ARM, 1, 0, as); + NULL, ELFDATA2LSB, EM_ARM, 1, 0, as); if (image_size < 0) { image_size = load_image_targphys_as(kernel_filename, mem_base, mem_size, as); diff --git a/hw/arm/boot.c b/hw/arm/boot.c index b44bea8a821..cbc24356fc1 100644 --- a/hw/arm/boot.c +++ b/hw/arm/boot.c @@ -798,7 +798,7 @@ static ssize_t arm_load_elf(struct arm_boot_info *info, uint64_t *pentry, Elf64_Ehdr h64; } elf_header; int data_swab = 0; - bool big_endian; + int elf_data_order; ssize_t ret; Error *err = NULL; @@ -814,12 +814,12 @@ static ssize_t arm_load_elf(struct arm_boot_info *info, uint64_t *pentry, } if (elf_is64) { - big_endian = elf_header.h64.e_ident[EI_DATA] == ELFDATA2MSB; - info->endianness = big_endian ? ARM_ENDIANNESS_BE8 - : ARM_ENDIANNESS_LE; + elf_data_order = elf_header.h64.e_ident[EI_DATA]; + info->endianness = elf_data_order == ELFDATA2MSB ? ARM_ENDIANNESS_BE8 + : ARM_ENDIANNESS_LE; } else { - big_endian = elf_header.h32.e_ident[EI_DATA] == ELFDATA2MSB; - if (big_endian) { + elf_data_order = elf_header.h32.e_ident[EI_DATA]; + if (elf_data_order == ELFDATA2MSB) { if (bswap32(elf_header.h32.e_flags) & EF_ARM_BE8) { info->endianness = ARM_ENDIANNESS_BE8; } else { @@ -839,8 +839,8 @@ static ssize_t arm_load_elf(struct arm_boot_info *info, uint64_t *pentry, } ret = load_elf_as(info->kernel_filename, NULL, NULL, NULL, - pentry, lowaddr, highaddr, NULL, big_endian, elf_machine, - 1, data_swab, as); + pentry, lowaddr, highaddr, NULL, elf_data_order, + elf_machine, 1, data_swab, as); if (ret <= 0) { /* The header loaded but the image didn't */ error_report("Couldn't load elf '%s': %s", diff --git a/hw/avr/boot.c b/hw/avr/boot.c index 6a91dcd12d0..e5a29c7218e 100644 --- a/hw/avr/boot.c +++ b/hw/avr/boot.c @@ -73,7 +73,7 @@ bool avr_load_firmware(AVRCPU *cpu, MachineState *ms, bytes_loaded = load_elf_as(filename, NULL, NULL, NULL, &entry, NULL, NULL, - &e_flags, 0, EM_AVR, 0, 0, NULL); + &e_flags, ELFDATA2LSB, EM_AVR, 0, 0, NULL); if (bytes_loaded >= 0) { /* If ELF file is provided, determine CPU type reading ELF e_flags. */ const char *elf_cpu = avr_elf_e_flags_to_cpu_type(e_flags); diff --git a/hw/core/generic-loader.c b/hw/core/generic-loader.c index fb354693aff..d9f5c2e8325 100644 --- a/hw/core/generic-loader.c +++ b/hw/core/generic-loader.c @@ -31,7 +31,6 @@ */ #include "qemu/osdep.h" -#include "exec/tswap.h" #include "system/dma.h" #include "system/reset.h" #include "hw/boards.h" @@ -66,7 +65,6 @@ static void generic_loader_realize(DeviceState *dev, Error **errp) { GenericLoaderState *s = GENERIC_LOADER(dev); hwaddr entry; - int big_endian; ssize_t size = 0; s->set_pc = false; @@ -134,14 +132,12 @@ static void generic_loader_realize(DeviceState *dev, Error **errp) s->cpu = first_cpu; } - big_endian = target_words_bigendian(); - if (s->file) { AddressSpace *as = s->cpu ? s->cpu->as : NULL; if (!s->force_raw) { size = load_elf_as(s->file, NULL, NULL, NULL, &entry, NULL, NULL, - NULL, big_endian, 0, 0, 0, as); + NULL, ELFDATANONE, 0, 0, 0, as); if (size < 0) { size = load_uimage_as(s->file, &entry, NULL, NULL, NULL, NULL, diff --git a/hw/core/loader.c b/hw/core/loader.c index f1fab3e91b1..cc0631e7dd5 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -413,7 +413,8 @@ ssize_t load_elf(const char *filename, int elf_machine, int clear_lsb, int data_swab) { return load_elf_as(filename, elf_note_fn, translate_fn, translate_opaque, - pentry, lowaddr, highaddr, pflags, big_endian, + pentry, lowaddr, highaddr, pflags, + big_endian ? ELFDATA2MSB : ELFDATA2LSB, elf_machine, clear_lsb, data_swab, NULL); } @@ -422,14 +423,13 @@ ssize_t load_elf_as(const char *filename, uint64_t (*elf_note_fn)(void *, void *, bool), uint64_t (*translate_fn)(void *, uint64_t), void *translate_opaque, uint64_t *pentry, uint64_t *lowaddr, - uint64_t *highaddr, uint32_t *pflags, int big_endian, + uint64_t *highaddr, uint32_t *pflags, int elf_data_order, int elf_machine, int clear_lsb, int data_swab, AddressSpace *as) { return load_elf_ram_sym(filename, elf_note_fn, translate_fn, translate_opaque, - pentry, lowaddr, highaddr, pflags, - big_endian ? ELFDATA2MSB : ELFDATA2LSB, + pentry, lowaddr, highaddr, pflags, elf_data_order, elf_machine, clear_lsb, data_swab, as, true, NULL); } From patchwork Fri Jan 31 21:05: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: 861023 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929860wrr; Fri, 31 Jan 2025 13:09:17 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCWaTldeMAnXhjKgbNi6tsxegfmuGpkQJb+qLLOWFwpsDZq23FepW274NYT2DyRlklZYCaOiWw==@linaro.org X-Google-Smtp-Source: AGHT+IHXLAxRt/HtVhB0sif1AYR0OC+CoKyjG79td/N+sv1DEq56rUDzgikpmpsMqCCIKQ6VneZH X-Received: by 2002:ad4:5bc4:0:b0:6d8:a730:110d with SMTP id 6a1803df08f44-6e243aaf082mr163643366d6.0.1738357757517; Fri, 31 Jan 2025 13:09:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357757; cv=none; d=google.com; s=arc-20240605; b=LLb1YrLtP9CMbZQXJSMv1lcwCii1jcDs2WNVwa4gx+cO9hzqYYHD+8xyq/RqKbB5KI GG2wRl0AiHZBOc0UB6ynllonBi1HFBiV3YxuoQugMvgMrXJZzueWn6W3Slq4Fhb6kkUv DecNlzCoXEqgdMh2VtRoAcnDpl6yCXzOdY8V1NcwYBUr4LuPfCnJKYZ0tjzUufyWkrYp wrDG541NyK+GZYQQCojqtRTSNJNEs4dZ3/aOPa5dbhCAy54RbpkuHweumGRzKIE/qZEj t3XV/+PmNcnTh/z/m3Y8J3KNfR+rgJ1yJ4V630HNJXjxXhvPwJuMUBvUm7+HRYPfEx8w 2oJA== 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=emmOs0Opw6C6HTsSGMk+16isz8yUvgEMOQYgzBPFsyk=; fh=a+mlDVhPtPS/wH9V/hPycNse0FYaXddh01AyoUBGwgo=; b=D2E+AAMa2CmSzpE5+zBG1uqqlly4erR+Eyx7G1ZUJXA6Z4EAOqynOJLTiSdg6mJPj/ JSAMkfUjEXjRkrO0sRpPP48hsNLlpioZJMM8fynrxvJhTcRlYRSduAr3TrxoexK5kMO/ mqRq49ip0Pz+Sg9jHGbh2g78y2nBCMsET8CcURMoNyfJWYpU0xlhOO4vQnI/8lnY9H8z xLhQu6vFL9a2gSOGZZJDyB/u6uOba5mEzKidTDNywTc1r9xv/jgwyDK2NRVTUrsD0Tyd 9a2joc4PBXicIAP8xgf/yFPIB3m42kkO+m9sQpE59uij/igv/9GF1MfI9Yu3RiMjC4WN MAag==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=BYq1nMTX; 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-6e2548377c4si43291426d6.137.2025.01.31.13.09.17 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09:17 -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=BYq1nMTX; 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 1tdyEg-0003CO-6Q; Fri, 31 Jan 2025 16:07:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdyEd-00032f-BX for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:31 -0500 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyEa-0007xl-4m for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:31 -0500 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-437a92d7b96so24164645e9.2 for ; Fri, 31 Jan 2025 13:07:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357646; x=1738962446; 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=emmOs0Opw6C6HTsSGMk+16isz8yUvgEMOQYgzBPFsyk=; b=BYq1nMTXQMC0tCZIoY3NepgbhsVblhfPFukSqA45hRuZNG2Mn8FXK1OCg4QSSghlsB frXFx3U6vRtQqQIr7W/vOCsZ24m3YEOKDry8yGHBbkibmacroJEsTdfRZktTevjN1hOr G97JHn+/SQilsEmBxU1KDLp0D1IUSsYiwNXdj4xeXMqwvIVT8HrQ8h/gTmbQs9T6JhS3 WWaAH4Ej3FkXrbi0oIANttRmbqI+MCX0zQYS2qlwtlTTwUTvPColXxOQmnxDl/v0LYHf 0P/b9bFjCthvQ/sCpyJa3PZMdvH2wMUDcYLplU8k7vklwO4WU6rwwNl3MG9GP2o62hGh RvZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357646; x=1738962446; 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=emmOs0Opw6C6HTsSGMk+16isz8yUvgEMOQYgzBPFsyk=; b=LBQh+nov/WerygvJjdHUdFfpGBlwwcwSuzMCZSoI81EVQmV/AeUDvXoYmcnBC9gpQg 0WqH6pL8u8f05vxEDpq0sBppTi4mERymVUW8MibsAajmEGf4HbHukkQr22s4yEvFqcT+ bcprIqSSWX9aY8Nnqs5K8R8CKcIwy2xPRCt85+aRDULe0u4l2smWXD8xUB7EYFK3/4Xl aMemeEMK2sMGlFBsY1jla7um9PDzbK8bozhB42ko6LqIfzDLJAV+KDKvM3HKGH8BRQSB ZbtEsvA3cBeeFzYr0LoS3faWO6hdaBC6CC74duhb7fNQrfRVIN62O8c11d/1HIvxWgNP Hbgw== X-Gm-Message-State: AOJu0YxuxAwbVz3BAeQQUhnfmbv9FX2kcXu2r6YhKvVLx3AscXSAWWTc dLdQtc1KPsaWJRZ89LKp7h484wdRmYXueGJIVNE/s7Zx8UZH6UMjbCj87YfHoUW3fWD0BeRejAk j380= X-Gm-Gg: ASbGncsAPOUr057bCZHQbjphdwognQnn2c9Mst+pkqZT7fM4N4n9Hlwd6C6s3WYPnBS RV8e0x60PJFpu/yyb32dq1G1qK0kp8ToMtUjQjdiTujMhPKxLbSDDh+n9ca70ibl1z4kF0TGKbv IfLbp4sTc/V9FN4BUAPa4SbBWeTgXrmNhTlg5fmNfhJZoLFF1UXpnKEDQjKjyU+7qt5CuQM7SUX YyjGZHJ+tohRTRzHGftxTRfL8zHtNlyPWKxmVA6x45ngyAnwgG+wne+E+i9mzqwh2dTGLtjUtnS hsm7/n4clnHN5xScz8s4dP3pp5eRCJQeEdh6Rk+HizMnaSWseu3jhBhztBkEeeDKew== X-Received: by 2002:a05:600c:5486:b0:436:4708:9fb6 with SMTP id 5b1f17b1804b1-438dc40b42dmr104967265e9.20.1738357646012; Fri, 31 Jan 2025 13:07:26 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38c5c0ec89csm5491416f8f.6.2025.01.31.13.07.25 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:25 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson , BALATON Zoltan Subject: [PULL 25/36] hw/loader: Pass ELFDATA endian order argument to load_elf() Date: Fri, 31 Jan 2025 22:05:08 +0100 Message-ID: <20250131210520.85874-26-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32e; envelope-from=philmd@linaro.org; helo=mail-wm1-x32e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 Rather than passing a boolean 'is_big_endian' argument, directly pass the ELFDATA, which can be unspecified using the ELFDATANONE value. Update the call sites: 0 -> ELFDATA2LSB 1 -> ELFDATA2MSB TARGET_BIG_ENDIAN -> TARGET_BIG_ENDIAN ? ELFDATA2MSB : ELFDATA2LSB Suggested-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: BALATON Zoltan Reviewed-by: Richard Henderson Message-Id: <20250127113824.50177-7-philmd@linaro.org> --- include/hw/loader.h | 2 +- hw/alpha/dp264.c | 4 ++-- hw/core/loader.c | 5 ++--- hw/hppa/machine.c | 4 ++-- hw/i386/multiboot.c | 4 ++-- hw/i386/x86-common.c | 4 ++-- hw/loongarch/boot.c | 2 +- hw/m68k/an5206.c | 2 +- hw/m68k/mcf5208.c | 2 +- hw/m68k/q800.c | 2 +- hw/m68k/virt.c | 2 +- hw/microblaze/boot.c | 6 ++++-- hw/mips/boston.c | 2 +- hw/mips/fuloong2e.c | 2 +- hw/mips/loongson3_virt.c | 2 +- hw/mips/malta.c | 5 +++-- hw/mips/mipssim.c | 3 ++- hw/openrisc/boot.c | 2 +- hw/pci-host/raven.c | 4 ++-- hw/ppc/e500.c | 2 +- hw/ppc/mac_newworld.c | 5 +++-- hw/ppc/mac_oldworld.c | 4 ++-- hw/ppc/pegasos2.c | 8 ++++---- hw/ppc/ppc405_boards.c | 2 +- hw/ppc/ppc440_bamboo.c | 3 ++- hw/ppc/sam460ex.c | 2 +- hw/ppc/spapr.c | 8 ++++---- hw/ppc/virtex_ml507.c | 4 ++-- hw/s390x/ipl.c | 6 +++--- hw/sparc/leon3.c | 2 +- hw/sparc/sun4m.c | 5 +++-- hw/sparc64/sun4u.c | 6 +++--- hw/tricore/triboard.c | 2 +- hw/tricore/tricore_testboard.c | 2 +- hw/xtensa/sim.c | 3 ++- hw/xtensa/xtfpga.c | 3 ++- 36 files changed, 67 insertions(+), 59 deletions(-) diff --git a/include/hw/loader.h b/include/hw/loader.h index 84737c05b8d..784a93d6c17 100644 --- a/include/hw/loader.h +++ b/include/hw/loader.h @@ -174,7 +174,7 @@ ssize_t load_elf(const char *filename, uint64_t (*elf_note_fn)(void *, void *, bool), uint64_t (*translate_fn)(void *, uint64_t), void *translate_opaque, uint64_t *pentry, uint64_t *lowaddr, - uint64_t *highaddr, uint32_t *pflags, int big_endian, + uint64_t *highaddr, uint32_t *pflags, int elf_data_order, int elf_machine, int clear_lsb, int data_swab); /** load_elf_hdr: diff --git a/hw/alpha/dp264.c b/hw/alpha/dp264.c index 52a1fa310b9..570ea9edf24 100644 --- a/hw/alpha/dp264.c +++ b/hw/alpha/dp264.c @@ -144,7 +144,7 @@ static void clipper_init(MachineState *machine) } size = load_elf(palcode_filename, NULL, cpu_alpha_superpage_to_phys, NULL, &palcode_entry, NULL, NULL, NULL, - 0, EM_ALPHA, 0, 0); + ELFDATA2LSB, EM_ALPHA, 0, 0); if (size < 0) { error_report("could not load palcode '%s'", palcode_filename); exit(1); @@ -163,7 +163,7 @@ static void clipper_init(MachineState *machine) size = load_elf(kernel_filename, NULL, cpu_alpha_superpage_to_phys, NULL, &kernel_entry, &kernel_low, NULL, NULL, - 0, EM_ALPHA, 0, 0); + ELFDATA2LSB, EM_ALPHA, 0, 0); if (size < 0) { error_report("could not load kernel '%s'", kernel_filename); exit(1); diff --git a/hw/core/loader.c b/hw/core/loader.c index cc0631e7dd5..fd25c5e01bd 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -409,12 +409,11 @@ ssize_t load_elf(const char *filename, uint64_t (*elf_note_fn)(void *, void *, bool), uint64_t (*translate_fn)(void *, uint64_t), void *translate_opaque, uint64_t *pentry, uint64_t *lowaddr, - uint64_t *highaddr, uint32_t *pflags, int big_endian, + uint64_t *highaddr, uint32_t *pflags, int elf_data_order, int elf_machine, int clear_lsb, int data_swab) { return load_elf_as(filename, elf_note_fn, translate_fn, translate_opaque, - pentry, lowaddr, highaddr, pflags, - big_endian ? ELFDATA2MSB : ELFDATA2LSB, + pentry, lowaddr, highaddr, pflags, elf_data_order, elf_machine, clear_lsb, data_swab, NULL); } diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c index 0dd19082146..b6135d95261 100644 --- a/hw/hppa/machine.c +++ b/hw/hppa/machine.c @@ -440,7 +440,7 @@ static void machine_HP_common_init_tail(MachineState *machine, PCIBus *pci_bus, size = load_elf(firmware_filename, NULL, translate, NULL, &firmware_entry, &firmware_low, &firmware_high, NULL, - true, EM_PARISC, 0, 0); + ELFDATA2MSB, EM_PARISC, 0, 0); if (size < 0) { error_report("could not load firmware '%s'", firmware_filename); @@ -467,7 +467,7 @@ static void machine_HP_common_init_tail(MachineState *machine, PCIBus *pci_bus, if (kernel_filename) { size = load_elf(kernel_filename, NULL, linux_kernel_virt_to_phys, NULL, &kernel_entry, &kernel_low, &kernel_high, NULL, - true, EM_PARISC, 0, 0); + ELFDATA2MSB, EM_PARISC, 0, 0); kernel_entry = linux_kernel_virt_to_phys(NULL, kernel_entry); diff --git a/hw/i386/multiboot.c b/hw/i386/multiboot.c index 1d66ca3204a..cd07a058614 100644 --- a/hw/i386/multiboot.c +++ b/hw/i386/multiboot.c @@ -202,8 +202,8 @@ int load_multiboot(X86MachineState *x86ms, } kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, &elf_entry, - &elf_low, &elf_high, NULL, 0, I386_ELF_MACHINE, - 0, 0); + &elf_low, &elf_high, NULL, + ELFDATA2LSB, I386_ELF_MACHINE, 0, 0); if (kernel_size < 0) { error_report("Error while loading elf kernel"); exit(1); diff --git a/hw/i386/x86-common.c b/hw/i386/x86-common.c index 008496b5b85..1b0671c5239 100644 --- a/hw/i386/x86-common.c +++ b/hw/i386/x86-common.c @@ -608,8 +608,8 @@ static bool load_elfboot(const char *kernel_filename, uint64_t elf_note_type = XEN_ELFNOTE_PHYS32_ENTRY; kernel_size = load_elf(kernel_filename, read_pvh_start_addr, NULL, &elf_note_type, &elf_entry, - &elf_low, &elf_high, NULL, 0, I386_ELF_MACHINE, - 0, 0); + &elf_low, &elf_high, NULL, + ELFDATA2LSB, I386_ELF_MACHINE, 0, 0); if (kernel_size < 0) { error_report("Error while loading elf kernel"); diff --git a/hw/loongarch/boot.c b/hw/loongarch/boot.c index bd8763c61c3..354cf458c81 100644 --- a/hw/loongarch/boot.c +++ b/hw/loongarch/boot.c @@ -243,7 +243,7 @@ static int64_t load_kernel_info(struct loongarch_boot_info *info) kernel_size = load_elf(info->kernel_filename, NULL, cpu_loongarch_virt_to_phys, NULL, &kernel_entry, &kernel_low, - &kernel_high, NULL, 0, + &kernel_high, NULL, ELFDATA2LSB, EM_LOONGARCH, 1, 0); if (kernel_size < 0) { kernel_size = load_loongarch_linux_image(info->kernel_filename, diff --git a/hw/m68k/an5206.c b/hw/m68k/an5206.c index 7b8210475ec..d97399b882b 100644 --- a/hw/m68k/an5206.c +++ b/hw/m68k/an5206.c @@ -74,7 +74,7 @@ static void an5206_init(MachineState *machine) } kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, &elf_entry, - NULL, NULL, NULL, 1, EM_68K, 0, 0); + NULL, NULL, NULL, ELFDATA2MSB, EM_68K, 0, 0); entry = elf_entry; if (kernel_size < 0) { kernel_size = load_uimage(kernel_filename, &entry, NULL, NULL, diff --git a/hw/m68k/mcf5208.c b/hw/m68k/mcf5208.c index 409bb72574c..75cc076f787 100644 --- a/hw/m68k/mcf5208.c +++ b/hw/m68k/mcf5208.c @@ -372,7 +372,7 @@ static void mcf5208evb_init(MachineState *machine) } kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, &elf_entry, - NULL, NULL, NULL, 1, EM_68K, 0, 0); + NULL, NULL, NULL, ELFDATA2MSB, EM_68K, 0, 0); entry = elf_entry; if (kernel_size < 0) { kernel_size = load_uimage(kernel_filename, &entry, NULL, NULL, diff --git a/hw/m68k/q800.c b/hw/m68k/q800.c index ca3adb9a8ae..aeed4c8ddb8 100644 --- a/hw/m68k/q800.c +++ b/hw/m68k/q800.c @@ -585,7 +585,7 @@ static void q800_machine_init(MachineState *machine) } kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, - &elf_entry, NULL, &high, NULL, 1, + &elf_entry, NULL, &high, NULL, ELFDATA2MSB, EM_68K, 0, 0); if (kernel_size < 0) { error_report("could not load kernel '%s'", kernel_filename); diff --git a/hw/m68k/virt.c b/hw/m68k/virt.c index 87ec39eeae1..d967bdd7438 100644 --- a/hw/m68k/virt.c +++ b/hw/m68k/virt.c @@ -228,7 +228,7 @@ static void virt_init(MachineState *machine) } kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, - &elf_entry, NULL, &high, NULL, 1, + &elf_entry, NULL, &high, NULL, ELFDATA2MSB, EM_68K, 0, 0); if (kernel_size < 0) { error_report("could not load kernel '%s'", kernel_filename); diff --git a/hw/microblaze/boot.c b/hw/microblaze/boot.c index 3854bc2291b..60b4ef0abe7 100644 --- a/hw/microblaze/boot.c +++ b/hw/microblaze/boot.c @@ -144,13 +144,15 @@ void microblaze_load_kernel(MicroBlazeCPU *cpu, bool is_little_endian, /* Boots a kernel elf binary. */ kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, &entry, NULL, &high, NULL, - !is_little_endian, EM_MICROBLAZE, 0, 0); + is_little_endian ? ELFDATA2LSB : ELFDATA2MSB, + EM_MICROBLAZE, 0, 0); base32 = entry; if (base32 == 0xc0000000) { kernel_size = load_elf(kernel_filename, NULL, translate_kernel_address, NULL, &entry, NULL, NULL, NULL, - !is_little_endian, EM_MICROBLAZE, 0, 0); + is_little_endian ? ELFDATA2LSB : ELFDATA2MSB, + EM_MICROBLAZE, 0, 0); } /* Always boot into physical ram. */ boot_info.bootstrap_pc = (uint32_t)entry; diff --git a/hw/mips/boston.c b/hw/mips/boston.c index 67044af962a..364c328032a 100644 --- a/hw/mips/boston.c +++ b/hw/mips/boston.c @@ -792,7 +792,7 @@ static void boston_mach_init(MachineState *machine) kernel_size = load_elf(machine->kernel_filename, NULL, cpu_mips_kseg0_to_phys, NULL, &kernel_entry, NULL, &kernel_high, - NULL, 0, EM_MIPS, 1, 0); + NULL, ELFDATA2LSB, EM_MIPS, 1, 0); if (kernel_size > 0) { int dt_size; diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index 16b6a5129e7..646044e2749 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -106,7 +106,7 @@ static uint64_t load_kernel(MIPSCPU *cpu) cpu_mips_kseg0_to_phys, NULL, &kernel_entry, NULL, &kernel_high, NULL, - 0, EM_MIPS, 1, 0); + ELFDATA2LSB, EM_MIPS, 1, 0); if (kernel_size < 0) { error_report("could not load kernel '%s': %s", loaderparams.kernel_filename, diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c index 85cf1f707fa..831fddb1bd7 100644 --- a/hw/mips/loongson3_virt.c +++ b/hw/mips/loongson3_virt.c @@ -358,7 +358,7 @@ static uint64_t load_kernel(CPUMIPSState *env) cpu_mips_kseg0_to_phys, NULL, &kernel_entry, &kernel_low, &kernel_high, - NULL, 0, EM_MIPS, 1, 0); + NULL, ELFDATA2LSB, EM_MIPS, 1, 0); if (kernel_size < 0) { error_report("could not load kernel '%s': %s", loaderparams.kernel_filename, diff --git a/hw/mips/malta.c b/hw/mips/malta.c index 4e9cccaa347..8e9cea70b13 100644 --- a/hw/mips/malta.c +++ b/hw/mips/malta.c @@ -880,8 +880,9 @@ static uint64_t load_kernel(void) kernel_size = load_elf(loaderparams.kernel_filename, NULL, cpu_mips_kseg0_to_phys, NULL, &kernel_entry, NULL, - &kernel_high, NULL, TARGET_BIG_ENDIAN, EM_MIPS, - 1, 0); + &kernel_high, NULL, + TARGET_BIG_ENDIAN ? ELFDATA2MSB : ELFDATA2LSB, + EM_MIPS, 1, 0); if (kernel_size < 0) { error_report("could not load kernel '%s': %s", loaderparams.kernel_filename, diff --git a/hw/mips/mipssim.c b/hw/mips/mipssim.c index a294779a82b..c530688e769 100644 --- a/hw/mips/mipssim.c +++ b/hw/mips/mipssim.c @@ -73,7 +73,8 @@ static uint64_t load_kernel(void) kernel_size = load_elf(loaderparams.kernel_filename, NULL, cpu_mips_kseg0_to_phys, NULL, &entry, NULL, - &kernel_high, NULL, TARGET_BIG_ENDIAN, + &kernel_high, NULL, + TARGET_BIG_ENDIAN ? ELFDATA2MSB : ELFDATA2LSB, EM_MIPS, 1, 0); if (kernel_size < 0) { error_report("could not load kernel '%s': %s", diff --git a/hw/openrisc/boot.c b/hw/openrisc/boot.c index 83c1fc6705e..0f08df812dc 100644 --- a/hw/openrisc/boot.c +++ b/hw/openrisc/boot.c @@ -32,7 +32,7 @@ hwaddr openrisc_load_kernel(ram_addr_t ram_size, if (kernel_filename && !qtest_enabled()) { kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, - &elf_entry, NULL, &high_addr, NULL, 1, + &elf_entry, NULL, &high_addr, NULL, ELFDATA2MSB, EM_OPENRISC, 1, 0); entry = elf_entry; if (kernel_size < 0) { diff --git a/hw/pci-host/raven.c b/hw/pci-host/raven.c index 918a3237a9e..e3d8d206b73 100644 --- a/hw/pci-host/raven.c +++ b/hw/pci-host/raven.c @@ -357,8 +357,8 @@ static void raven_realize(PCIDevice *d, Error **errp) if (filename) { if (s->elf_machine != EM_NONE) { bios_size = load_elf(filename, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, 1, s->elf_machine, - 0, 0); + NULL, NULL, NULL, + ELFDATA2MSB, s->elf_machine, 0, 0); } if (bios_size < 0) { bios_size = get_image_size(filename); diff --git a/hw/ppc/e500.c b/hw/ppc/e500.c index 4551157c011..26933e0457e 100644 --- a/hw/ppc/e500.c +++ b/hw/ppc/e500.c @@ -1194,7 +1194,7 @@ void ppce500_init(MachineState *machine) payload_size = load_elf(filename, NULL, NULL, NULL, &bios_entry, &loadaddr, NULL, NULL, - 1, PPC_ELF_MACHINE, 0, 0); + ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); if (payload_size < 0) { /* * Hrm. No ELF image? Try a uImage, maybe someone is giving us an diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c index 6369961f78a..cb3dc3ab482 100644 --- a/hw/ppc/mac_newworld.c +++ b/hw/ppc/mac_newworld.c @@ -182,7 +182,8 @@ static void ppc_core99_init(MachineState *machine) if (filename) { /* Load OpenBIOS (ELF) */ bios_size = load_elf(filename, NULL, NULL, NULL, NULL, - NULL, NULL, NULL, 1, PPC_ELF_MACHINE, 0, 0); + NULL, NULL, NULL, + ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); if (bios_size <= 0) { /* or load binary ROM image */ @@ -204,7 +205,7 @@ static void ppc_core99_init(MachineState *machine) kernel_base = KERNEL_LOAD_ADDR; kernel_size = load_elf(machine->kernel_filename, NULL, translate_kernel_address, NULL, NULL, NULL, - NULL, NULL, 1, PPC_ELF_MACHINE, 0, 0); + NULL, NULL, ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); if (kernel_size < 0) { kernel_size = load_aout(machine->kernel_filename, kernel_base, machine->ram_size - kernel_base, diff --git a/hw/ppc/mac_oldworld.c b/hw/ppc/mac_oldworld.c index 59653e174b8..0dbcea035c3 100644 --- a/hw/ppc/mac_oldworld.c +++ b/hw/ppc/mac_oldworld.c @@ -136,7 +136,7 @@ static void ppc_heathrow_init(MachineState *machine) if (filename) { /* Load OpenBIOS (ELF) */ bios_size = load_elf(filename, NULL, NULL, NULL, NULL, &bios_addr, - NULL, NULL, 1, PPC_ELF_MACHINE, 0, 0); + NULL, NULL, ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); /* Unfortunately, load_elf sign-extends reading elf32 */ bios_addr = (uint32_t)bios_addr; @@ -161,7 +161,7 @@ static void ppc_heathrow_init(MachineState *machine) kernel_base = KERNEL_LOAD_ADDR; kernel_size = load_elf(machine->kernel_filename, NULL, translate_kernel_address, NULL, NULL, NULL, - NULL, NULL, 1, PPC_ELF_MACHINE, 0, 0); + NULL, NULL, ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); if (kernel_size < 0) { kernel_size = load_aout(machine->kernel_filename, kernel_base, machine->ram_size - kernel_base, diff --git a/hw/ppc/pegasos2.c b/hw/ppc/pegasos2.c index b3c21bdc57c..0364243f4fe 100644 --- a/hw/ppc/pegasos2.c +++ b/hw/ppc/pegasos2.c @@ -160,8 +160,8 @@ static void pegasos2_init(MachineState *machine) } memory_region_init_rom(rom, NULL, "pegasos2.rom", PROM_SIZE, &error_fatal); memory_region_add_subregion(get_system_memory(), PROM_ADDR, rom); - sz = load_elf(filename, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, - PPC_ELF_MACHINE, 0, 0); + sz = load_elf(filename, NULL, NULL, NULL, NULL, NULL, NULL, NULL, + ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); if (sz <= 0) { sz = load_image_targphys(filename, pm->vof ? 0 : PROM_ADDR, PROM_SIZE); } @@ -239,8 +239,8 @@ static void pegasos2_init(MachineState *machine) if (machine->kernel_filename) { sz = load_elf(machine->kernel_filename, NULL, NULL, NULL, - &pm->kernel_entry, &pm->kernel_addr, NULL, NULL, 1, - PPC_ELF_MACHINE, 0, 0); + &pm->kernel_entry, &pm->kernel_addr, NULL, NULL, + ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); if (sz <= 0) { error_report("Could not load kernel '%s'", machine->kernel_filename); diff --git a/hw/ppc/ppc405_boards.c b/hw/ppc/ppc405_boards.c index e9f65fab70d..969cac345ac 100644 --- a/hw/ppc/ppc405_boards.c +++ b/hw/ppc/ppc405_boards.c @@ -232,7 +232,7 @@ static void boot_from_kernel(MachineState *machine, PowerPCCPU *cpu) kernel_size = load_elf(machine->kernel_filename, NULL, NULL, NULL, &boot_entry, &kernel_base, NULL, NULL, - 1, PPC_ELF_MACHINE, 0, 0); + ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); if (kernel_size < 0) { error_report("Could not load kernel '%s' : %s", machine->kernel_filename, load_elf_strerror(kernel_size)); diff --git a/hw/ppc/ppc440_bamboo.c b/hw/ppc/ppc440_bamboo.c index 45c5b8678d9..099fda39092 100644 --- a/hw/ppc/ppc440_bamboo.c +++ b/hw/ppc/ppc440_bamboo.c @@ -228,7 +228,8 @@ static void bamboo_init(MachineState *machine) if (success < 0) { uint64_t elf_entry; success = load_elf(kernel_filename, NULL, NULL, NULL, &elf_entry, - NULL, NULL, NULL, 1, PPC_ELF_MACHINE, 0, 0); + NULL, NULL, NULL, + ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); entry = elf_entry; } /* XXX try again as binary */ diff --git a/hw/ppc/sam460ex.c b/hw/ppc/sam460ex.c index e74642a3b71..3ecae6a9504 100644 --- a/hw/ppc/sam460ex.c +++ b/hw/ppc/sam460ex.c @@ -479,7 +479,7 @@ static void sam460ex_init(MachineState *machine) success = load_elf(machine->kernel_filename, NULL, NULL, NULL, &elf_entry, NULL, NULL, NULL, - 1, PPC_ELF_MACHINE, 0, 0); + ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); entry = elf_entry; } /* XXX try again as binary */ diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index 623842f8064..f3a4b4235d4 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -3022,13 +3022,13 @@ static void spapr_machine_init(MachineState *machine) spapr->kernel_size = load_elf(kernel_filename, NULL, translate_kernel_address, spapr, - NULL, &loaded_addr, NULL, NULL, 1, - PPC_ELF_MACHINE, 0, 0); + NULL, &loaded_addr, NULL, NULL, + ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); if (spapr->kernel_size == ELF_LOAD_WRONG_ENDIAN) { spapr->kernel_size = load_elf(kernel_filename, NULL, translate_kernel_address, spapr, - NULL, &loaded_addr, NULL, NULL, 0, - PPC_ELF_MACHINE, 0, 0); + NULL, &loaded_addr, NULL, NULL, + ELFDATA2LSB, PPC_ELF_MACHINE, 0, 0); spapr->kernel_le = spapr->kernel_size > 0; } if (spapr->kernel_size < 0) { diff --git a/hw/ppc/virtex_ml507.c b/hw/ppc/virtex_ml507.c index ea7ab8a5694..23238119273 100644 --- a/hw/ppc/virtex_ml507.c +++ b/hw/ppc/virtex_ml507.c @@ -242,8 +242,8 @@ static void virtex_init(MachineState *machine) /* Boots a kernel elf binary. */ kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, - &entry, NULL, &high, NULL, 1, PPC_ELF_MACHINE, - 0, 0); + &entry, NULL, &high, NULL, + ELFDATA2MSB, PPC_ELF_MACHINE, 0, 0); boot_info.bootstrap_pc = entry & 0x00ffffff; if (kernel_size < 0) { diff --git a/hw/s390x/ipl.c b/hw/s390x/ipl.c index 4aa21c91fca..ce6f6078d74 100644 --- a/hw/s390x/ipl.c +++ b/hw/s390x/ipl.c @@ -162,8 +162,8 @@ static void s390_ipl_realize(DeviceState *dev, Error **errp) bios_size = load_elf(bios_filename, NULL, bios_translate_addr, &fwbase, - &ipl->bios_start_addr, NULL, NULL, NULL, 1, - EM_S390, 0, 0); + &ipl->bios_start_addr, NULL, NULL, NULL, + ELFDATA2MSB, EM_S390, 0, 0); if (bios_size > 0) { /* Adjust ELF start address to final location */ ipl->bios_start_addr += fwbase; @@ -187,7 +187,7 @@ static void s390_ipl_realize(DeviceState *dev, Error **errp) if (ipl->kernel) { kernel_size = load_elf(ipl->kernel, NULL, NULL, NULL, &pentry, NULL, - NULL, NULL, 1, EM_S390, 0, 0); + NULL, NULL, ELFDATA2MSB, EM_S390, 0, 0); if (kernel_size < 0) { kernel_size = load_image_targphys(ipl->kernel, 0, ms->ram_size); if (kernel_size < 0) { diff --git a/hw/sparc/leon3.c b/hw/sparc/leon3.c index 84381254ad0..0aeaad3becc 100644 --- a/hw/sparc/leon3.c +++ b/hw/sparc/leon3.c @@ -380,7 +380,7 @@ static void leon3_generic_hw_init(MachineState *machine) kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, &entry, NULL, NULL, NULL, - 1 /* big endian */, EM_SPARC, 0, 0); + ELFDATA2MSB, EM_SPARC, 0, 0); if (kernel_size < 0) { kernel_size = load_uimage(kernel_filename, NULL, &entry, NULL, NULL, NULL); diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c index e070360a2c7..a48d3622c5a 100644 --- a/hw/sparc/sun4m.c +++ b/hw/sparc/sun4m.c @@ -242,7 +242,8 @@ static unsigned long sun4m_load_kernel(const char *kernel_filename, #endif kernel_size = load_elf(kernel_filename, NULL, translate_kernel_address, NULL, - NULL, NULL, NULL, NULL, 1, EM_SPARC, 0, 0); + NULL, NULL, NULL, NULL, + ELFDATA2MSB, EM_SPARC, 0, 0); if (kernel_size < 0) kernel_size = load_aout(kernel_filename, KERNEL_LOAD_ADDR, RAM_size - KERNEL_LOAD_ADDR, bswap_needed, @@ -703,7 +704,7 @@ static void prom_init(hwaddr addr, const char *bios_name) if (filename) { ret = load_elf(filename, NULL, translate_prom_address, &addr, NULL, - NULL, NULL, NULL, 1, EM_SPARC, 0, 0); + NULL, NULL, NULL, ELFDATA2MSB, EM_SPARC, 0, 0); if (ret < 0 || ret > PROM_SIZE_MAX) { ret = load_image_targphys(filename, addr, PROM_SIZE_MAX); } diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c index 0980b446593..8ab5cf0461f 100644 --- a/hw/sparc64/sun4u.c +++ b/hw/sparc64/sun4u.c @@ -176,8 +176,8 @@ static uint64_t sun4u_load_kernel(const char *kernel_filename, bswap_needed = 0; #endif kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, kernel_entry, - kernel_addr, &kernel_top, NULL, 1, EM_SPARCV9, 0, - 0); + kernel_addr, &kernel_top, NULL, + ELFDATA2MSB, EM_SPARCV9, 0, 0); if (kernel_size < 0) { *kernel_addr = KERNEL_LOAD_ADDR; *kernel_entry = KERNEL_LOAD_ADDR; @@ -441,7 +441,7 @@ static void prom_init(hwaddr addr, const char *bios_name) filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, bios_name); if (filename) { ret = load_elf(filename, NULL, translate_prom_address, &addr, - NULL, NULL, NULL, NULL, 1, EM_SPARCV9, 0, 0); + NULL, NULL, NULL, NULL, ELFDATA2MSB, EM_SPARCV9, 0, 0); if (ret < 0 || ret > PROM_SIZE_MAX) { ret = load_image_targphys(filename, addr, PROM_SIZE_MAX); } diff --git a/hw/tricore/triboard.c b/hw/tricore/triboard.c index 9cc8d282ff2..f5baa8ccbb3 100644 --- a/hw/tricore/triboard.c +++ b/hw/tricore/triboard.c @@ -39,7 +39,7 @@ static void tricore_load_kernel(TriCoreCPU *cpu, const char *kernel_filename) kernel_size = load_elf(kernel_filename, NULL, NULL, NULL, &entry, NULL, - NULL, NULL, 0, + NULL, NULL, ELFDATA2LSB, EM_TRICORE, 1, 0); if (kernel_size <= 0) { error_report("no kernel file '%s'", kernel_filename); diff --git a/hw/tricore/tricore_testboard.c b/hw/tricore/tricore_testboard.c index c29db8b451c..3facfdfd611 100644 --- a/hw/tricore/tricore_testboard.c +++ b/hw/tricore/tricore_testboard.c @@ -42,7 +42,7 @@ static void tricore_load_kernel(CPUTriCoreState *env) kernel_size = load_elf(tricoretb_binfo.kernel_filename, NULL, NULL, NULL, &entry, NULL, - NULL, NULL, 0, + NULL, NULL, ELFDATA2LSB, EM_TRICORE, 1, 0); if (kernel_size <= 0) { error_report("no kernel file '%s'", diff --git a/hw/xtensa/sim.c b/hw/xtensa/sim.c index 0a1fd900376..1cea29c66d4 100644 --- a/hw/xtensa/sim.c +++ b/hw/xtensa/sim.c @@ -100,7 +100,8 @@ void xtensa_sim_load_kernel(XtensaCPU *cpu, MachineState *machine) if (kernel_filename) { uint64_t elf_entry; int success = load_elf(kernel_filename, NULL, translate_phys_addr, cpu, - &elf_entry, NULL, NULL, NULL, TARGET_BIG_ENDIAN, + &elf_entry, NULL, NULL, NULL, + TARGET_BIG_ENDIAN ? ELFDATA2MSB : ELFDATA2LSB, EM_XTENSA, 0, 0); if (success > 0) { diff --git a/hw/xtensa/xtfpga.c b/hw/xtensa/xtfpga.c index 9efe91933f9..3f3677f1c9a 100644 --- a/hw/xtensa/xtfpga.c +++ b/hw/xtensa/xtfpga.c @@ -398,7 +398,8 @@ static void xtfpga_init(const XtfpgaBoardDesc *board, MachineState *machine) uint64_t elf_entry; int success = load_elf(kernel_filename, NULL, translate_phys_addr, cpu, - &elf_entry, NULL, NULL, NULL, TARGET_BIG_ENDIAN, + &elf_entry, NULL, NULL, NULL, + TARGET_BIG_ENDIAN ? ELFDATA2MSB : ELFDATA2LSB, EM_XTENSA, 0, 0); if (success > 0) { entry_point = elf_entry; From patchwork Fri Jan 31 21:05: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: 861030 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930127wrr; Fri, 31 Jan 2025 13:09:53 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUkvgame5Df8wiz4z9QN5FfskJ9Ujj4/c2l/VXBWvSdfJg6IvviOS9a6i6fYM2i1N1S2lHMPQ==@linaro.org X-Google-Smtp-Source: AGHT+IEpwHFc/qgasg+BHCrIRd0jf/ADF/ehr5cCoSNHfywg3Ig6bM0EGS8V9MXGj71Va9IavloP X-Received: by 2002:a05:6214:268e:b0:6d4:24cf:aaa4 with SMTP id 6a1803df08f44-6e243bb9200mr187782576d6.17.1738357793158; Fri, 31 Jan 2025 13:09:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357793; cv=none; d=google.com; s=arc-20240605; b=hupjlYk9laWlmfT1ZJjSBjPAqOuMRJ8D78lYIfiDaobn2zt2A3ZbBbz/YFq7Aywct/ TdtFzBBnaZR9uSjNkzl5L/d+zCsoEVjk87zyUsEqYqNrkG6ZKL3mj9HASkzmmSKV36qS 7Ma/NbkC3EF5rO0x2+Vd72kObGdxfCtAW9Bbp3lb8EsLGMq4GUq68X0VyyWvLwGnaclj hdmTHj9qUOWo1iNqEkLfQGdMVxFoJkf7cKdQFk15KkNOupALOCFWHQj9y2K59dIDnT7O 3ityGo0+kYnfFsFwlVVS35TF/1QutYZd4G+mFBiNk/0MUt/uw6CmxKfJjjHymwv5O70f 233g== 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=CI3fJcIwv6F5yUs6Iv79OMCJfAeeRwik7915FGrttBI=; fh=hrttvYDQ/RHeq9ZPl6fx8GLJN/+EeLQ90pmG86Kf6FU=; b=HHjeaaEEr5hP/9pQc88o5/BzpKXYMmzdALWr2eOMhqYnvS+jKohMmmolerwebtHXx8 iQLdVhEwsmBLBH+0F0P/hD2Gr0P9NWIj5jGvqc0Zo8CnuQaGPJBWjoQiGj88MNmPil3e zkdoUr/7rkSJE3jsxhxFuF+xGV7KgxKEtwL1lX3/zODvlUC9oWojxmK4dEOyJ/cPMCPI km5TZ8kFkbfZv0pMIfa+2uWcV69Tyori60Kin82I0fsiDd4H8CpybjPmSduciV9fZzwo hVdcvekr/5nr0c9blyl/BNFnyCEQ03wUHHrnka/6P0PgWJatnXPPG1NNBXpCY1Zigahf BhWQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=rEt06Lyn; 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-6e2549c3a2asi42122536d6.363.2025.01.31.13.09.52 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09: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=rEt06Lyn; 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 1tdyF5-0003vT-6p; Fri, 31 Jan 2025 16:08: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 1tdyEg-0003G9-Fg for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:35 -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 1tdyEe-0007yV-GS for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:34 -0500 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-4361f65ca01so24928355e9.1 for ; Fri, 31 Jan 2025 13:07:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357651; x=1738962451; 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=CI3fJcIwv6F5yUs6Iv79OMCJfAeeRwik7915FGrttBI=; b=rEt06LynfGHe4Guj8QTrSUZEppvAfhBidMPsLAZ0rQqJ1hzEacpAXq9+CeLTYKD7Xx 1syXWW4FvT9NVBEAi8pO2V5Txpf6CPIiuN2+e1fHoNoniP2w7xc3O7gsXE3715flf4t4 lFvdm/GTwucuoamH9yDAal3pL4npwMGGzKMolxRCjQBxHrmcJxlu2SNNnkfKOTFBAITf nzEbh/Quuq2C9Q66fGnskwH32FHr+ZpwEDA8Vt3RQCoccJzbptx3Fa2keHYYfEJYgpUU eo51qk1s+hOfZUKXk+OACqdNze33xR6dJigwkmKTDqxzAh9TXkc4HH2DsKUyAP6Il3UE WxMA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357651; x=1738962451; 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=CI3fJcIwv6F5yUs6Iv79OMCJfAeeRwik7915FGrttBI=; b=tzD8Jsveva1W4Ld0DNVZfc1WA/pzg52qvAbTGrsUs3sDyj+jMTxqsg21q5mLor02fO A4oXt6a+wJoZeaiEytK7FrsOA85b8Smmz11rGNH2IjKvwP4WxWiNNUojfwF1mSZPgU8l 1LFuW48wbrqkmDDK3xnr0w7cDBenjMBPg+U6CyEevsl+xVbesz+5YHYollFXxhY0FKDY sYgA2gSLS0nsgdV98OyriBZti1Q0XtRwlXt/aNY05pTv6IRdnnEanpG7Z4qh2iLs9RLI 4YDOrnRLhRErDnpymvZdBmTw8tyg43OB5uf/gom72EGDjS2xF9tZmNc75/epOEso0luh tENA== X-Gm-Message-State: AOJu0Yy/67Z1pjlkYYzzSBRRGKs1tn/c13s42GRH9oAozJZQfM7UuB1K MaVxQ0zVHiUtBDnkNFWtlRTv3bEkYR+DJHlnnpgM4eOn/ppF2L/XzT8LI9+isftJxc8i3P6yahw gkBo= X-Gm-Gg: ASbGncsCLj2eW4aUs9nYHuYOPaKlWarXqZkA8xsUOxGXK691VGmInbjcY5vaXXHLxGc aV3JAVGLxmlyjkw7k3FeYVJBj8EkSHicErIcCaKr3VHFBR47G80824DBW+n8gZH0Sv3SNGfv7T9 D1NYl34uQ23UWgbDSFHPuKvXY5V58bkEkB5nScFFtBlkK0904JwdSjq5SEhTaXDKDWdydl36N7/ PQR6Mj+zeupTvkFSwBWBCBwYQobNYngcphQdg4u3eNBuApwzlAsCY51ubMpbLbMLOSV7pZHjxIB 6aZmOB/IkqzJX9Vil1sYUbSof8i+I8rK1LuJMlWaDJ4BN6z8nmGa8M1ck0DHj9o9hg== X-Received: by 2002:a05:600c:3c9f:b0:438:a240:c63 with SMTP id 5b1f17b1804b1-438dc3aa55emr117422865e9.2.1738357650656; Fri, 31 Jan 2025 13:07: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-438e23deddcsm66098885e9.14.2025.01.31.13.07.29 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:30 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , Richard Henderson , =?utf-8?q?Philippe_Mathie?= =?utf-8?q?u-Daud=C3=A9?= Subject: [PULL 26/36] hw/sd/omap_mmc: Do a minimal conversion to QDev Date: Fri, 31 Jan 2025 22:05:09 +0100 Message-ID: <20250131210520.85874-27-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 From: Peter Maydell Do a minimal conversion of the omap_mmc device model to QDev. In this commit we do the bare minimum to produce a working device: * add the SysBusDevice parent_obj and the usual type boilerplate * omap_mmc_init() now returns a DeviceState* * reset is handled by sysbus reset, so the SoC reset function doesn't need to call omap_mmc_reset() any more * code that should obviously be in init/realize is moved there from omap_mmc_init() We leave various pieces of cleanup to later commits: * rationalizing 'struct omap_mmc_s *' to 'OMAPMMCState *' * using gpio lines rather than having omap_mmc_init() directly set s->irq, s->dma * switching away from the legacy SD API and instead having the SD card plugged into a bus Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250128104519.3981448-2-peter.maydell@linaro.org> [PMD: Do not add omap_mmc_realize()] Signed-off-by: Philippe Mathieu-Daudé --- include/hw/arm/omap.h | 15 +++++---- hw/arm/omap1.c | 1 - hw/sd/omap_mmc.c | 77 ++++++++++++++++++++++++++++++++++--------- 3 files changed, 70 insertions(+), 23 deletions(-) diff --git a/include/hw/arm/omap.h b/include/hw/arm/omap.h index 420ed1d5735..6339c5a581e 100644 --- a/include/hw/arm/omap.h +++ b/include/hw/arm/omap.h @@ -529,12 +529,13 @@ struct omap_lcd_panel_s *omap_lcdc_init(MemoryRegion *sysmem, omap_clk clk); /* omap_mmc.c */ -struct omap_mmc_s; -struct omap_mmc_s *omap_mmc_init(hwaddr base, - MemoryRegion *sysmem, - BlockBackend *blk, - qemu_irq irq, qemu_irq dma[], omap_clk clk); -void omap_mmc_reset(struct omap_mmc_s *s); +#define TYPE_OMAP_MMC "omap-mmc" +OBJECT_DECLARE_SIMPLE_TYPE(omap_mmc_s, OMAP_MMC) + +DeviceState *omap_mmc_init(hwaddr base, + MemoryRegion *sysmem, + BlockBackend *blk, + qemu_irq irq, qemu_irq dma[], omap_clk clk); /* omap_i2c.c */ I2CBus *omap_i2c_bus(DeviceState *omap_i2c); @@ -601,7 +602,7 @@ struct omap_mpu_state_s { /* MPU public TIPB peripherals */ struct omap_32khz_timer_s *os_timer; - struct omap_mmc_s *mmc; + DeviceState *mmc; struct omap_mpuio_s *mpuio; diff --git a/hw/arm/omap1.c b/hw/arm/omap1.c index f3a0ac40e48..ea07b9aa31e 100644 --- a/hw/arm/omap1.c +++ b/hw/arm/omap1.c @@ -3716,7 +3716,6 @@ static void omap1_mpu_reset(void *opaque) omap_uart_reset(mpu->uart[0]); omap_uart_reset(mpu->uart[1]); omap_uart_reset(mpu->uart[2]); - omap_mmc_reset(mpu->mmc); omap_mpuio_reset(mpu->mpuio); omap_uwire_reset(mpu->microwire); omap_pwl_reset(mpu->pwl); diff --git a/hw/sd/omap_mmc.c b/hw/sd/omap_mmc.c index 1d4e30e6b7b..fec2cfd4d66 100644 --- a/hw/sd/omap_mmc.c +++ b/hw/sd/omap_mmc.c @@ -21,11 +21,15 @@ #include "qemu/osdep.h" #include "qemu/log.h" +#include "qapi/error.h" #include "hw/irq.h" +#include "hw/sysbus.h" #include "hw/arm/omap.h" #include "hw/sd/sdcard_legacy.h" -struct omap_mmc_s { +typedef struct omap_mmc_s { + SysBusDevice parent_obj; + qemu_irq irq; qemu_irq *dma; qemu_irq coverswitch; @@ -66,7 +70,7 @@ struct omap_mmc_s { int cdet_enable; int cdet_state; qemu_irq cdet; -}; +} OMAPMMCState; static void omap_mmc_interrupts_update(struct omap_mmc_s *s) { @@ -297,7 +301,7 @@ static void omap_mmc_pseudo_reset(struct omap_mmc_s *host) host->fifo_len = 0; } -void omap_mmc_reset(struct omap_mmc_s *host) +static void omap_mmc_reset(struct omap_mmc_s *host) { host->last_cmd = 0; memset(host->rsp, 0, sizeof(host->rsp)); @@ -328,7 +332,9 @@ void omap_mmc_reset(struct omap_mmc_s *host) * into any bus, and we must reset it manually. When omap_mmc is * QOMified this must move into the QOM reset function. */ - device_cold_reset(DEVICE(host->card)); + if (host->card) { + device_cold_reset(DEVICE(host->card)); + } } static uint64_t omap_mmc_read(void *opaque, hwaddr offset, unsigned size) @@ -583,29 +589,70 @@ static const MemoryRegionOps omap_mmc_ops = { .endianness = DEVICE_NATIVE_ENDIAN, }; -struct omap_mmc_s *omap_mmc_init(hwaddr base, - MemoryRegion *sysmem, - BlockBackend *blk, - qemu_irq irq, qemu_irq dma[], omap_clk clk) +DeviceState *omap_mmc_init(hwaddr base, + MemoryRegion *sysmem, + BlockBackend *blk, + qemu_irq irq, qemu_irq dma[], omap_clk clk) { - struct omap_mmc_s *s = g_new0(struct omap_mmc_s, 1); + DeviceState *dev; + OMAPMMCState *s; + + dev = qdev_new(TYPE_OMAP_MMC); + s = OMAP_MMC(dev); + sysbus_realize_and_unref(SYS_BUS_DEVICE(s), &error_fatal); s->irq = irq; s->dma = dma; s->clk = clk; - s->lines = 1; /* TODO: needs to be settable per-board */ - s->rev = 1; - memory_region_init_io(&s->iomem, NULL, &omap_mmc_ops, s, "omap.mmc", 0x800); - memory_region_add_subregion(sysmem, base, &s->iomem); + memory_region_add_subregion(sysmem, base, + sysbus_mmio_get_region(SYS_BUS_DEVICE(s), 0)); /* Instantiate the storage */ s->card = sd_init(blk, false); if (s->card == NULL) { exit(1); } + return dev; +} + +static void omap_mmc_reset_hold(Object *obj, ResetType type) +{ + OMAPMMCState *s = OMAP_MMC(obj); omap_mmc_reset(s); - - return s; } + +static void omap_mmc_initfn(Object *obj) +{ + OMAPMMCState *s = OMAP_MMC(obj); + + /* In theory these could be settable per-board */ + s->lines = 1; + s->rev = 1; + + memory_region_init_io(&s->iomem, obj, &omap_mmc_ops, s, "omap.mmc", 0x800); + sysbus_init_mmio(SYS_BUS_DEVICE(s), &s->iomem); +} + +static void omap_mmc_class_init(ObjectClass *oc, void *data) +{ + ResettableClass *rc = RESETTABLE_CLASS(oc); + + rc->phases.hold = omap_mmc_reset_hold; +} + +static const TypeInfo omap_mmc_info = { + .name = TYPE_OMAP_MMC, + .parent = TYPE_SYS_BUS_DEVICE, + .instance_size = sizeof(OMAPMMCState), + .instance_init = omap_mmc_initfn, + .class_init = omap_mmc_class_init, +}; + +static void omap_mmc_register_types(void) +{ + type_register_static(&omap_mmc_info); +} + +type_init(omap_mmc_register_types) From patchwork Fri Jan 31 21:05: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: 861036 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930297wrr; Fri, 31 Jan 2025 13:10:15 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUgBH917n1wIYdLP283dH6kgYBieAkF6KxBYgBBkR3mLckFknPHMuDOUKnwOU68xqi/mGO3Yw==@linaro.org X-Google-Smtp-Source: AGHT+IEWyWgTYZXGmzN0otwRxZToEQM7GhSjexQsy6/oABFt9jciAfR2UFAMW9YQ3BUBFFJtHE5X X-Received: by 2002:ad4:5c88:0:b0:6cb:d4ed:aa59 with SMTP id 6a1803df08f44-6e243b8f811mr163592376d6.4.1738357815286; Fri, 31 Jan 2025 13:10:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357815; cv=none; d=google.com; s=arc-20240605; b=MDb5CYfbgUevu9d3k+eHnKKpWMpK7OmuNSxzIpD7/bKu0i7KYQvYwdvrirHLqzJ16I I5nQ9eKr511XdlafQrWRH5iPzeqRbKaL5jNXq8i1ebqT2u1tswQ9RvO+ftYLtZ0NvI5K 45GYVAx6WbwsrsMesA1g3MG7apzUlq78xnuJdYuEYagtZjc3qH7XCvQpZJaJ5Rr3ji3s 6KmDMkvL/u2YcbywLzceiYgAlhCr+XCeIkjbNWflZrfTN3CI4PyqBb5Hp/gxtH2mokFH iUQW1PyxWVALbnruqszFVmyjfCQDK028Vzm2T7VvipPHboTf9qiZ/xaSn21en+unw1Q7 Pm4Q== 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=VwhcEyrTW8SxL1gomr78xxwwBfYGuo9Xtd73z405jUg=; fh=hrttvYDQ/RHeq9ZPl6fx8GLJN/+EeLQ90pmG86Kf6FU=; b=RA1NS46hQPbTEkiXfBm+U5mr1r9ARpd1wamH0X5239lh0XE1iiksmMH9qWH5oMe9/X HzL7cv3Ev01JOr0yTSCepdxN1+WanUCh86UPqSF/0gBIsvUg+ToiFyT7NBs2woOtOt5C L9NI/Kep7gR9Ukxq8f3IK3I26L20wwSX+3st2rX36sXzCp5E87XYAtH9XV5p7oOCGi5p L43qDcfAJX05AHWI0fnyqwMYc8vNYnO8TZgv3utQp9i2Yi0/Uy85r94PjViYsvzCMs0L GdSMtw919Q0ZbXUn/t2laneCpBmSfiWXRJpryRy+NW2FwznLievcy4Qgf2PLm1SEQiSY 8zWw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=cKf9CMFl; 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-6e25499e778si42648096d6.272.2025.01.31.13.10.15 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:10: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=cKf9CMFl; 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 1tdyFL-0004Cl-Jp; Fri, 31 Jan 2025 16:08:15 -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 1tdyEm-0003c4-BN for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:43 -0500 Received: from mail-wr1-x432.google.com ([2a00:1450:4864:20::432]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyEk-0007zR-HN for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:40 -0500 Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-38637614567so1147963f8f.3 for ; Fri, 31 Jan 2025 13:07:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357656; x=1738962456; 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=VwhcEyrTW8SxL1gomr78xxwwBfYGuo9Xtd73z405jUg=; b=cKf9CMFlMp6xGGC2ZNg6hl1p0cGZ1WMzfS1iUUL/UJMaK4QPGNUMsE3v68KqMVrgBz XGehkAgHy4C5zrrNzLpHlCNcokaaVzPI8UeVC+FCvOGTtg1FE3gA65RjAZxOjjdHyJXc Vup01/OTTxwPtTLWdsHVOmnrsDLA7AiguWpYyy1zMQVRqW8DQTKdCg31J6lrXxpo9kwQ DRswJNQfn4Y9fdsBK8b82wgFDtRTsvO3P7i2IFYZEOqPr0RMzTnBs9AhPF2qRjHcopfW 2Ml4Gvm+Vy703/LmSlYpTYzpYJXoX3MxyMwXvJd+KDpC6oVXiuaqGnAw3G5rE/Lky+KR WBkQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357656; x=1738962456; 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=VwhcEyrTW8SxL1gomr78xxwwBfYGuo9Xtd73z405jUg=; b=cnVCHiebVMfOr/Qqcwxou8ewEYbGHzc17qMTJaRbu1Nchxdwc/FEZ2pjiQ/83Z7BCq cheJbMZW//YmS6C0IfzHi+loaAJgRNXZ2nEJshRU/I4PEcRY07lAWDBRkKSkcjbfv3Dr 1V9OcH/4Qov6F5soQ9gAhrcm6RkvZdzJc0sTeg/eoIhlUWgZg4m+bkcZ78b7WyXsWcY2 8O9gtmW0gPjCZMlDLLYhWNDu5cDa9V3OSPO1WxBxuXdAB9w40cmjO+G9Oo+1hWxb+A+z E6Rtm1cXS6CKT7nGw1mx3dQmBARTzjiC2cRx8kezzel+Igi7WbEOb/RY480X8GHF+rXo voGQ== X-Gm-Message-State: AOJu0YwUlqFNM7cYJkwDCItfag9K51x+rDluJJNjH/Kuo6Oyc8T1Mxbw wRsDqjhH9kEPdGjha4qn6S+Ta+hjs2kT5em++btRyfhG7x5afq7ZzMMJfLogVCJjBkuMI+vyIzg W3Bg= X-Gm-Gg: ASbGnctN2cGwKVy+tzWh6ezWYysUP8tB77xUx/6GccJOS1tAzjFu+WyssaQfbNvIikt zY+I6Noz7OlfSPnAyXkYvc4UqdbgtftSMQa8MByFgzVq83ZvWJiyDmFnjQbUddckgiGKRDOtHYr Cmi+41S/sa7DnwQOqVL10+M8CyhvIDZh26RB9VC6ek0M0ZA/6JAs8LORkbTVgQZCi+Vu+0Ght+N 2zx6Bnj8qV1LSWRgGTBc3htInAGIQ1EP4JK5xsOiw4DI85EFzOhPBt6719RcdL0uB5aMUjlI5wj ipuDfcSMWOwGFFG1avRFBdH2aQfkDz4ODsL3HkrCB77lRgP2dq3/FhyLAZOSDZmqHA== X-Received: by 2002:a5d:588c:0:b0:385:f38e:c0c3 with SMTP id ffacd0b85a97d-38c51930ff6mr10790922f8f.6.1738357656042; Fri, 31 Jan 2025 13:07:36 -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-38c5c0ece21sm5529637f8f.20.2025.01.31.13.07.34 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:35 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , Richard Henderson , =?utf-8?q?Philippe_Mathie?= =?utf-8?q?u-Daud=C3=A9?= Subject: [PULL 27/36] hw/sd/omap_mmc: Convert remaining 'struct omap_mmc_s' uses to OMAPMMCState Date: Fri, 31 Jan 2025 22:05:10 +0100 Message-ID: <20250131210520.85874-28-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=philmd@linaro.org; helo=mail-wr1-x432.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 From: Peter Maydell Mechanically convert the remaining uses of 'struct omap_mmc_s' to 'OMAPMMCState'. Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250128104519.3981448-3-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daudé --- include/hw/arm/omap.h | 2 +- hw/sd/omap_mmc.c | 20 ++++++++++---------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/include/hw/arm/omap.h b/include/hw/arm/omap.h index 6339c5a581e..7d1a1afc4f8 100644 --- a/include/hw/arm/omap.h +++ b/include/hw/arm/omap.h @@ -530,7 +530,7 @@ struct omap_lcd_panel_s *omap_lcdc_init(MemoryRegion *sysmem, /* omap_mmc.c */ #define TYPE_OMAP_MMC "omap-mmc" -OBJECT_DECLARE_SIMPLE_TYPE(omap_mmc_s, OMAP_MMC) +OBJECT_DECLARE_SIMPLE_TYPE(OMAPMMCState, OMAP_MMC) DeviceState *omap_mmc_init(hwaddr base, MemoryRegion *sysmem, diff --git a/hw/sd/omap_mmc.c b/hw/sd/omap_mmc.c index fec2cfd4d66..0f17479ecb8 100644 --- a/hw/sd/omap_mmc.c +++ b/hw/sd/omap_mmc.c @@ -27,7 +27,7 @@ #include "hw/arm/omap.h" #include "hw/sd/sdcard_legacy.h" -typedef struct omap_mmc_s { +typedef struct OMAPMMCState { SysBusDevice parent_obj; qemu_irq irq; @@ -72,12 +72,12 @@ typedef struct omap_mmc_s { qemu_irq cdet; } OMAPMMCState; -static void omap_mmc_interrupts_update(struct omap_mmc_s *s) +static void omap_mmc_interrupts_update(OMAPMMCState *s) { qemu_set_irq(s->irq, !!(s->status & s->mask)); } -static void omap_mmc_fifolevel_update(struct omap_mmc_s *host) +static void omap_mmc_fifolevel_update(OMAPMMCState *host) { if (!host->transfer && !host->fifo_len) { host->status &= 0xf3ff; @@ -125,7 +125,7 @@ typedef enum { SD_TYPE_ADTC = 3, /* addressed with data transfer */ } MMCCmdType; -static void omap_mmc_command(struct omap_mmc_s *host, int cmd, int dir, +static void omap_mmc_command(OMAPMMCState *host, int cmd, int dir, MMCCmdType type, int busy, sd_rsp_type_t resptype, int init) { @@ -234,7 +234,7 @@ static void omap_mmc_command(struct omap_mmc_s *host, int cmd, int dir, host->status |= 0x0001; } -static void omap_mmc_transfer(struct omap_mmc_s *host) +static void omap_mmc_transfer(OMAPMMCState *host) { uint8_t value; @@ -289,19 +289,19 @@ static void omap_mmc_transfer(struct omap_mmc_s *host) static void omap_mmc_update(void *opaque) { - struct omap_mmc_s *s = opaque; + OMAPMMCState *s = opaque; omap_mmc_transfer(s); omap_mmc_fifolevel_update(s); omap_mmc_interrupts_update(s); } -static void omap_mmc_pseudo_reset(struct omap_mmc_s *host) +static void omap_mmc_pseudo_reset(OMAPMMCState *host) { host->status = 0; host->fifo_len = 0; } -static void omap_mmc_reset(struct omap_mmc_s *host) +static void omap_mmc_reset(OMAPMMCState *host) { host->last_cmd = 0; memset(host->rsp, 0, sizeof(host->rsp)); @@ -340,7 +340,7 @@ static void omap_mmc_reset(struct omap_mmc_s *host) static uint64_t omap_mmc_read(void *opaque, hwaddr offset, unsigned size) { uint16_t i; - struct omap_mmc_s *s = opaque; + OMAPMMCState *s = opaque; if (size != 2) { return omap_badwidth_read16(opaque, offset); @@ -433,7 +433,7 @@ static void omap_mmc_write(void *opaque, hwaddr offset, uint64_t value, unsigned size) { int i; - struct omap_mmc_s *s = opaque; + OMAPMMCState *s = opaque; if (size != 2) { omap_badwidth_write16(opaque, offset, value); From patchwork Fri Jan 31 21:05: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: 861043 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930737wrr; Fri, 31 Jan 2025 13:11:17 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCV5iQfmAsT5dx88pJ849zXSLAlnmEgiPFUz+fXUbqMSsXjfzdhdPOlGcgo3++LlscYnzhg2yg==@linaro.org X-Google-Smtp-Source: AGHT+IG/d6PsKPQnPpNZWc6oV/UYBrpdLA0HREOIUj+r4Tlio0t+4UgReycce5X664IeLwCjiyU6 X-Received: by 2002:a05:622a:5c16:b0:46f:cb44:75de with SMTP id d75a77b69052e-46fd0a113admr151243781cf.10.1738357876778; Fri, 31 Jan 2025 13:11:16 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357876; cv=none; d=google.com; s=arc-20240605; b=Bx3KW38JDXIdFNBi57ixtX0QZWJSRxzbUUBAPeHToikhOrihfDsuBxwpTInWhn+lal AMmw/Uss5Hmzrfz0EkE+v32+J63Sotn5WgRUOgmfrru4wut6cePWebP3Pgrp9pHhJzHi I+jt4aMlLv+hgyOJ7fcDB4Lz5YfRGI0vUat5uORfjun/YeVKbRCeX/eyo1G6wgQTG4Fj dxDw+ReQSvX9ebLA0gUQWyZAGPgWm/vUJNzV0xWpHmZfMDtIhxHypIPM1U2sgs1GwRoO 0gV+lFFufF4AvqTt24m4LC1QUtQVAJLgZx/PyJ9ZEpsDUtwYmWueIO/3PivKKOmTa1tR z0Nw== 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=9N3BSf00evn14ZysC8qEFhKlpze4TdqYVBorbd99L/M=; fh=hrttvYDQ/RHeq9ZPl6fx8GLJN/+EeLQ90pmG86Kf6FU=; b=XZTLVnfAiSn3j1OEVZ624Oegqhkfm+mYScQeJGxA6YmpeJ9wHyjd6jOewFGzeVC7WM 6KPeavIUBWLudF5z97g1R5BclI6Nv7W/1Szb4S5lIln7Q0S1YI4/Gmv33Q8PXdfjphJz qX4H7B2aVJcTJLr3FCPRU+/v4lHeCDanYgfxBkw+m8d6t7V5v4RhNufb6qYK6mr3dmVT dCRkfNoh8J+m5E4l6/fNOgEoBV9jQ4oyqbWazr/hphT8QxWGlnGCTER/FunFhNZ+e91A dXjAy/NwmV/Xd8qjAF/PC7nyOUrcgmL2kTpQWCwqcVVCTGB/PhRk2gLfmQ975YlKM7/g PGaQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=sdGyFc0C; 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-46fdf0ab935si43313001cf.58.2025.01.31.13.11.16 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:11:16 -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=sdGyFc0C; 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 1tdyFN-0004WG-9l; Fri, 31 Jan 2025 16:08:17 -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 1tdyEr-0003rF-LC for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:46 -0500 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyEp-000800-SF for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:45 -0500 Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-436326dcb1cso17109405e9.0 for ; Fri, 31 Jan 2025 13:07:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357661; x=1738962461; 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=9N3BSf00evn14ZysC8qEFhKlpze4TdqYVBorbd99L/M=; b=sdGyFc0CmYnQqi/Je3YzWxOIULzDfVU9t6pvwugIST4rLP+V0gKCqDTot0Fz+yolyZ Y+6PzScqHzYTE3e5zgHFHzOfLSaes14iHxdJClwrasLD02zn9ZZ/ygJ0Qez9JwniZdgx y8lQL6z2b39iuV5kCX5Ltg5KDla/Jzy5n4d745j/SQ89Sz/TFPaHRVu1WPImwl8Oyz8e 9iqeiWHmiLXwjhGEN0pltcYdtVSzWQCP0uZeEyNUEdKVg3oEmsAA2+rTKyGR2ibfBx40 gAvB+9BTSlaojWgnoLYG2t8ideKetJTxz45CsOByTBl/9djrhonOJEeVEHFqhqkEorUA nOsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357661; x=1738962461; 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=9N3BSf00evn14ZysC8qEFhKlpze4TdqYVBorbd99L/M=; b=PNApABcx1pHksLn1ghqBVzhMQlJ4TPR2aWDLWPfqtzscdm6rXLVFebxMXT8kjrweoq FRqlslGZZLaLnx/a9rKfzlboskcI5NEAdNx5mEgdEl47HqATponT9VLUojCEs0guAxPO hVa0bB91s+PM7P1P1JC5A7aGrpfLgxX+oY+YXOpkdRk0xIhW8OGhdZIREEDhdJHawYA9 kx1sKQ4VXAbNQLJtewUr/ZSvbEwEMnzHOjz0Joh3HQi/1HDTQsOzR0FyWh+XH6uOnsyA jrVtB/TqYxE1OaM1yF844ymUriUrNuZ2qNwKBt6hH/ad1z46NRHZxfpTOVupqX9O+6Ne jnjQ== X-Gm-Message-State: AOJu0Yw6P/BiUKuGrX3bdFVqaeHr3jzqpO0yJqgQO6SgfhTDysDVHEAW 4mES14aB7p9RpGRryZiLXZ1DyxTklOGIA2WH2Om6oR/DEw5QAGpqALNWCvQMAg3GBuF3cMujsyH 3Hz0= X-Gm-Gg: ASbGnctnMPP/ynpsUVuxc3PBqLsS1yBjURnV2fqZPFv8r5SaMupvuk/IAG/raV6p1eK +RYVPHIetN1XAOKGU8C3PksxfFe7TYorpoYtyxtuGzoPwbDHa87xEg290Edre+YB89aaN5ZzLxs 4073ob3A9+zGIofDA0TcbCJEMqqfHfLBQpCkSfjjkSIfvut0W/vRH6rZIYqulCaeIxCd1mO1F71 ZV1Tq0FWZ6UHU0fKkskcyx1OxaqDwtYqsFquLfUu3sm5JpLe9eWdKJwKtDgkVQDrUzSV8TyAp2U U5Ln9bM5yHIdCI/XYb+y6x/QAAgudDBgxWqMiXVnqZf2apDfB9MXQwULGt8yRJGscw== X-Received: by 2002:a5d:5384:0:b0:38a:8ed1:c5c7 with SMTP id ffacd0b85a97d-38c520bdb45mr8449662f8f.46.1738357661386; Fri, 31 Jan 2025 13:07:41 -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-38c5c102bc0sm5656665f8f.35.2025.01.31.13.07.39 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:40 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , Richard Henderson , =?utf-8?q?Philippe_Mathie?= =?utf-8?q?u-Daud=C3=A9?= Subject: [PULL 28/36] hw/sd/omap_mmc: Convert output qemu_irqs to gpio and sysbus IRQ APIs Date: Fri, 31 Jan 2025 22:05:11 +0100 Message-ID: <20250131210520.85874-29-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32f; envelope-from=philmd@linaro.org; helo=mail-wm1-x32f.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 From: Peter Maydell The omap_mmc device has three outbound qemu_irq lines: * one actual interrupt line * two which connect to the DMA controller and are signalled for TX and RX DMA Convert these to a sysbus IRQ and two named GPIO outputs. Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250128104519.3981448-4-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daudé --- hw/sd/omap_mmc.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/hw/sd/omap_mmc.c b/hw/sd/omap_mmc.c index 0f17479ecb8..43203a76c58 100644 --- a/hw/sd/omap_mmc.c +++ b/hw/sd/omap_mmc.c @@ -31,7 +31,8 @@ typedef struct OMAPMMCState { SysBusDevice parent_obj; qemu_irq irq; - qemu_irq *dma; + qemu_irq dma_tx_gpio; + qemu_irq dma_rx_gpio; qemu_irq coverswitch; MemoryRegion iomem; omap_clk clk; @@ -87,22 +88,22 @@ static void omap_mmc_fifolevel_update(OMAPMMCState *host) if (host->fifo_len > host->af_level && host->ddir) { if (host->rx_dma) { host->status &= 0xfbff; - qemu_irq_raise(host->dma[1]); + qemu_irq_raise(host->dma_rx_gpio); } else host->status |= 0x0400; } else { host->status &= 0xfbff; - qemu_irq_lower(host->dma[1]); + qemu_irq_lower(host->dma_rx_gpio); } if (host->fifo_len < host->ae_level && !host->ddir) { if (host->tx_dma) { host->status &= 0xf7ff; - qemu_irq_raise(host->dma[0]); + qemu_irq_raise(host->dma_tx_gpio); } else host->status |= 0x0800; } else { - qemu_irq_lower(host->dma[0]); + qemu_irq_lower(host->dma_tx_gpio); host->status &= 0xf7ff; } } @@ -601,12 +602,13 @@ DeviceState *omap_mmc_init(hwaddr base, s = OMAP_MMC(dev); sysbus_realize_and_unref(SYS_BUS_DEVICE(s), &error_fatal); - s->irq = irq; - s->dma = dma; s->clk = clk; memory_region_add_subregion(sysmem, base, sysbus_mmio_get_region(SYS_BUS_DEVICE(s), 0)); + qdev_connect_gpio_out_named(dev, "dma-tx", 0, dma[0]); + qdev_connect_gpio_out_named(dev, "dma-rx", 0, dma[1]); + sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, irq); /* Instantiate the storage */ s->card = sd_init(blk, false); @@ -633,6 +635,10 @@ static void omap_mmc_initfn(Object *obj) memory_region_init_io(&s->iomem, obj, &omap_mmc_ops, s, "omap.mmc", 0x800); sysbus_init_mmio(SYS_BUS_DEVICE(s), &s->iomem); + + sysbus_init_irq(SYS_BUS_DEVICE(obj), &s->irq); + qdev_init_gpio_out_named(DEVICE(obj), &s->dma_tx_gpio, "dma-tx", 1); + qdev_init_gpio_out_named(DEVICE(obj), &s->dma_rx_gpio, "dma-rx", 1); } static void omap_mmc_class_init(ObjectClass *oc, void *data) From patchwork Fri Jan 31 21:05: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: 861027 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930012wrr; Fri, 31 Jan 2025 13:09:37 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXtZokrjHGFeiqhtW0gPprzNYe7znPxhn2Rg3MFU3CRX1GqehSAxmBfcTZNDTs6i6XxB1r5tw==@linaro.org X-Google-Smtp-Source: AGHT+IE8WSl1o3IHuYihALXBFcLkweQ2NMTzYgt43K/cR4uvvfDM9XkdBBQQp5iVhDP+hsb03U2p X-Received: by 2002:a05:6102:5045:b0:4b2:5ca3:f82a with SMTP id ada2fe7eead31-4b9a4f5dc62mr11216597137.7.1738357777714; Fri, 31 Jan 2025 13:09:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357777; cv=none; d=google.com; s=arc-20240605; b=Xu2AMGnxlQEflwmyy/GHrO6LV4Wt+R4/d1n4psIfFnhpzcR3gjsWWn8xkOdIvZnwcL Y0U2CrR3k1OR8b1YB0PvfPnZXomyi2mm+imQsdZFJiFT/dIeApo0IUL+YCH2rjs71vxE wu1ymMPZeV24d1dCinofGKwlGFy3IzHHbi49lJLmXPirHOvgF9qtO1KhU7VWTD1IWO7k lA6UZ8t7P0o3XQkcfvONXqm2jRkmfRcfpraER+FlNoFgkRXV6yD8tLlc7rVxbAFddIro 3Pj5zpmozfeN0WPeeRZQO+xAZNCqDxXe3S3bGq1wbxvDVyoC+9E69np8wleOAhEGnv8A hHKw== 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=q41kF9LgoBzRCfJNt+CSBeq/VMhGxdw7fo0GoRWO1As=; fh=alZCUczDNtN4yFLy44SM1yTUliPrh8AgZa0GP8izqo4=; b=SQ94DHh35OiPhXMBxk3ZM0GGTMDVHz1nb+2RX8swXILs12+ED/lIEZxkbXkkESCdzq rr+vDhxhMtVKoMTd4WimLoguCXGLQ/xCK0PRSvWgrbVn/p+zsngpaGRbuqXgxF0PshSS CCK+xOBrdCCCToLuDyJGLAojJKZX0xeVyt81r9pDXWzzjrZj3vik8F+V/QVKzFwy2JNS 26lSZ+misrFYKvltnQvYL82Mmkhpzr/FtBQgN5lOLDMcrkFjC7HgRmtt/tVgziL+0rEu ci0dgVpErV+i96h5cUQadv5vZqWuQF2y8XXGXZLcliDZbujucj4GCTxBaj5fs3lW8AFk gFzg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=NGE+sNmr; 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 ada2fe7eead31-4b9badc2e12si905906137.406.2025.01.31.13.09.37 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09:37 -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=NGE+sNmr; 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 1tdyFO-0004aO-1m; Fri, 31 Jan 2025 16:08:18 -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 1tdyEw-0003zA-17 for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:53 -0500 Received: from mail-wr1-x42e.google.com ([2a00:1450:4864:20::42e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyEt-00080G-UH for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:49 -0500 Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-3862f32a33eso1117190f8f.3 for ; Fri, 31 Jan 2025 13:07:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357666; x=1738962466; 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=q41kF9LgoBzRCfJNt+CSBeq/VMhGxdw7fo0GoRWO1As=; b=NGE+sNmr6JRn4fRmIgAjcn2cGEKKT0IsJsVbLR866NbE27uHMNFYY2ZYeP6JWB4+3f HOjraJY0S6GsRZ+XWSFFUlfnGN8rUyQSOUb3Q9AFdcQsU+NLIZwJuI5ruCNGdI0ctaER Wexa04QqdDZWaS4x+5wcDzvQTK4MIzgnFv1st30kg2vBxz9KOwpkbpw1PPlEBV3ohjP3 gg+whBYttgxaw25fXNYTifsbeyxUtcY8aaok7iUAMmC4nL+i9kMGKlr/5GJjUCXC6sn4 i6zpQuZEhBYN5kaNZbO0mYnHrM6xc+YAexaSQpxlWa887tRkaSG2DVERIqooK+Vf7qsb ugig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357666; x=1738962466; 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=q41kF9LgoBzRCfJNt+CSBeq/VMhGxdw7fo0GoRWO1As=; b=t7xTOTTmJ6KlIe11KlqQw4ZT+4uFsohnDHJf9A2jjJZH714u1j5r83YEbzowdKPHr0 ET5ASVSg9CPGI/UZCXs6/LUXC5/hlPj9pxqAlJm3JnVX2da+I3nMr8Ard42Ly5GK1KIw Kq3CeOVpj6WAQDksr0YB/ymQNO+wDnqMqpEqQuUugRb3YmqHBzFCaGvuSp78w+bIAtQ1 ZYJt4B91N4K98WV7Ah5v0Ah8QTNhGsPpLGkjFfvpLWDKsArBFp1TfHrjetEcg53nHNRh DvsRNyRkl37+QZ6A8MSb1yYHg5IXo6f/h2gwbP8ltuOx5/JWxkIoA16vohIhegH+o0+d Odnw== X-Gm-Message-State: AOJu0YyDWPbGbfdihf7P/Mt1d0MzSWsGD2Idx/2wiYPSDY9EOr0BHRG9 RksjZEIQCMkNM5n52KihJg9Q5qzXlAvBwVj7DI5KWvV9fZFMFLO+XE/CL3VU/+rNpH6TULQFlJH fM90= X-Gm-Gg: ASbGncspfIX6wNxn07NXjHTApbrXKKKQTdb/SHvj3KhRe14ZKo4W7g0u0jicw6HVFVw lJKB0Xac0lC34/WT1QWLObUQnBzXGAf98NSSFNmtL29ZJLtME+M2MOVUM3XgAmJDFsKnPrXYxc5 Ev5MWE7TkVeW1A5lZcDoP14X8fYeRcDqB0cmOzdQH+ozBcFnkRTYAy7bQmDTfHkHHGGIP1EnFDS pIDgzzC4R367MGj874/ecCNfQCW9l7sLnNqwrVRGP1Yr/Bp+zMCAtfyj7SkT9M/1NpUwQWGZjgf 1BCLCAVKNey6/DPE/bWq+JmoYq/vlN8UD994Fwl79xPEBIEo2JsQk5Lr3BLh74CTdA== X-Received: by 2002:a05:6000:188b:b0:385:f2a2:50df with SMTP id ffacd0b85a97d-38c5195f498mr12239186f8f.27.1738357665967; Fri, 31 Jan 2025 13:07:45 -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-38c5c139f15sm5640733f8f.59.2025.01.31.13.07.45 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:45 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , =?utf-8?q?Philippe_Mathieu-Dau?= =?utf-8?q?d=C3=A9?= Subject: [PULL 29/36] hw/sd/omap_mmc: Convert to SDBus API Date: Fri, 31 Jan 2025 22:05:12 +0100 Message-ID: <20250131210520.85874-30-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::42e; envelope-from=philmd@linaro.org; helo=mail-wr1-x42e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 From: Peter Maydell Convert the OMAP MMC controller to the new SDBus API: * the controller creates an SDBus bus * instead of sd_foo functions on the SDState object, call sdbus_foo functions on the SDBus * the board code creates a proper TYPE_SD_CARD object and attaches it to the controller's SDBus, instead of the controller creating a card directly via sd_init() that never gets attached to any bus * because the SD card object is on a bus, it gets reset automatically by the "traverse the qbus tree resetting things" code, and we don't need to manually reset the card from the controller reset function Signed-off-by: Peter Maydell Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250128104519.3981448-5-peter.maydell@linaro.org> [PMD: Include "hw/sd/sd.h" instead of "hw/sd/sdcard_legacy.h", create bus in omap_mmc_initfn() instead of omap_mmc_realize()] Signed-off-by: Philippe Mathieu-Daudé --- include/hw/arm/omap.h | 1 - hw/arm/omap1.c | 10 +++++++++- hw/sd/omap_mmc.c | 31 ++++++++++--------------------- 3 files changed, 19 insertions(+), 23 deletions(-) diff --git a/include/hw/arm/omap.h b/include/hw/arm/omap.h index 7d1a1afc4f8..d20c55a8957 100644 --- a/include/hw/arm/omap.h +++ b/include/hw/arm/omap.h @@ -534,7 +534,6 @@ OBJECT_DECLARE_SIMPLE_TYPE(OMAPMMCState, OMAP_MMC) DeviceState *omap_mmc_init(hwaddr base, MemoryRegion *sysmem, - BlockBackend *blk, qemu_irq irq, qemu_irq dma[], omap_clk clk); /* omap_i2c.c */ diff --git a/hw/arm/omap1.c b/hw/arm/omap1.c index ea07b9aa31e..15ba0a0d0c4 100644 --- a/hw/arm/omap1.c +++ b/hw/arm/omap1.c @@ -29,6 +29,7 @@ #include "hw/qdev-properties.h" #include "hw/arm/boot.h" #include "hw/arm/omap.h" +#include "hw/sd/sd.h" #include "system/blockdev.h" #include "system/system.h" #include "hw/arm/soc_dma.h" @@ -3981,11 +3982,18 @@ struct omap_mpu_state_s *omap310_mpu_init(MemoryRegion *dram, warn_report("missing SecureDigital device"); } s->mmc = omap_mmc_init(0xfffb7800, system_memory, - dinfo ? blk_by_legacy_dinfo(dinfo) : NULL, qdev_get_gpio_in(s->ih[1], OMAP_INT_OQN), &s->drq[OMAP_DMA_MMC_TX], omap_findclk(s, "mmc_ck")); + if (dinfo) { + DeviceState *card = qdev_new(TYPE_SD_CARD); + qdev_prop_set_drive_err(card, "drive", blk_by_legacy_dinfo(dinfo), + &error_fatal); + qdev_realize_and_unref(card, qdev_get_child_bus(s->mmc, "sd-bus"), + &error_fatal); + } + s->mpuio = omap_mpuio_init(system_memory, 0xfffb5000, qdev_get_gpio_in(s->ih[1], OMAP_INT_KEYBOARD), qdev_get_gpio_in(s->ih[1], OMAP_INT_MPUIO), diff --git a/hw/sd/omap_mmc.c b/hw/sd/omap_mmc.c index 43203a76c58..1bc8290f9d6 100644 --- a/hw/sd/omap_mmc.c +++ b/hw/sd/omap_mmc.c @@ -25,18 +25,19 @@ #include "hw/irq.h" #include "hw/sysbus.h" #include "hw/arm/omap.h" -#include "hw/sd/sdcard_legacy.h" +#include "hw/sd/sd.h" typedef struct OMAPMMCState { SysBusDevice parent_obj; + SDBus sdbus; + qemu_irq irq; qemu_irq dma_tx_gpio; qemu_irq dma_rx_gpio; qemu_irq coverswitch; MemoryRegion iomem; omap_clk clk; - SDState *card; uint16_t last_cmd; uint16_t sdio; uint16_t rsp[8]; @@ -158,7 +159,7 @@ static void omap_mmc_command(OMAPMMCState *host, int cmd, int dir, request.arg = host->arg; request.crc = 0; /* FIXME */ - rsplen = sd_do_command(host->card, &request, response); + rsplen = sdbus_do_command(&host->sdbus, &request, response); /* TODO: validate CRCs */ switch (resptype) { @@ -247,10 +248,10 @@ static void omap_mmc_transfer(OMAPMMCState *host) if (host->fifo_len > host->af_level) break; - value = sd_read_byte(host->card); + value = sdbus_read_byte(&host->sdbus); host->fifo[(host->fifo_start + host->fifo_len) & 31] = value; if (-- host->blen_counter) { - value = sd_read_byte(host->card); + value = sdbus_read_byte(&host->sdbus); host->fifo[(host->fifo_start + host->fifo_len) & 31] |= value << 8; host->blen_counter --; @@ -262,10 +263,10 @@ static void omap_mmc_transfer(OMAPMMCState *host) break; value = host->fifo[host->fifo_start] & 0xff; - sd_write_byte(host->card, value); + sdbus_write_byte(&host->sdbus, value); if (-- host->blen_counter) { value = host->fifo[host->fifo_start] >> 8; - sd_write_byte(host->card, value); + sdbus_write_byte(&host->sdbus, value); host->blen_counter --; } @@ -328,14 +329,6 @@ static void omap_mmc_reset(OMAPMMCState *host) host->clkdiv = 0; omap_mmc_pseudo_reset(host); - - /* Since we're still using the legacy SD API the card is not plugged - * into any bus, and we must reset it manually. When omap_mmc is - * QOMified this must move into the QOM reset function. - */ - if (host->card) { - device_cold_reset(DEVICE(host->card)); - } } static uint64_t omap_mmc_read(void *opaque, hwaddr offset, unsigned size) @@ -592,7 +585,6 @@ static const MemoryRegionOps omap_mmc_ops = { DeviceState *omap_mmc_init(hwaddr base, MemoryRegion *sysmem, - BlockBackend *blk, qemu_irq irq, qemu_irq dma[], omap_clk clk) { DeviceState *dev; @@ -610,11 +602,6 @@ DeviceState *omap_mmc_init(hwaddr base, qdev_connect_gpio_out_named(dev, "dma-rx", 0, dma[1]); sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, irq); - /* Instantiate the storage */ - s->card = sd_init(blk, false); - if (s->card == NULL) { - exit(1); - } return dev; } @@ -639,6 +626,8 @@ static void omap_mmc_initfn(Object *obj) sysbus_init_irq(SYS_BUS_DEVICE(obj), &s->irq); qdev_init_gpio_out_named(DEVICE(obj), &s->dma_tx_gpio, "dma-tx", 1); qdev_init_gpio_out_named(DEVICE(obj), &s->dma_rx_gpio, "dma-rx", 1); + + qbus_init(&s->sdbus, sizeof(s->sdbus), TYPE_SD_BUS, DEVICE(obj), "sd-bus"); } static void omap_mmc_class_init(ObjectClass *oc, void *data) From patchwork Fri Jan 31 21:05: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: 861033 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930161wrr; Fri, 31 Jan 2025 13:09:59 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCXEDCNEbmhK1PglBQZd1iR82gk1JU6XeW5pTctlFG4W8BuasLq7oOsc2j42a04Rph7uPPafJA==@linaro.org X-Google-Smtp-Source: AGHT+IG/hIy4f20vN3qiypCswShnE+T0kTmKRr9IkOW8FnuZ/94/ezDQiOF8l/ToNUv0Md8cADFW X-Received: by 2002:a05:6214:c88:b0:6d8:8b9d:1500 with SMTP id 6a1803df08f44-6e243c647edmr246623236d6.36.1738357799155; Fri, 31 Jan 2025 13:09:59 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357799; cv=none; d=google.com; s=arc-20240605; b=fJ0OAx7XuhwQWpYmArsqnhjmSbWgD2NIOFs9CWL8ldUKtzN6xwjsA6fY97ItIUJhMh ootPgA4A21aYZSGfwmquYv0Szg4FIfAo3L+hN3jorXte/lX2KrRw7KeAPG0VY/qg2yDE lpUHV6QD9AQZfZRBBh2sAzKl9/wTywBqL3lKmX3eBKEHV/fZtx7COvJyF1pi0xgVCUFU b6g6HSMsVniP0u1bqJ40PXtaf8DO6CBDanQVDuMKtq+gJtbT2y4t6dgM99YoWJkgRls3 dmqV/+N4p6VUGhJ0VhArgipS6SMcFryTKcC9fiVjJ/f1QER2chaCiw6HHOHvKe2O1w/L jJEA== 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=jevzQmfhYyewLfy6WntyUbmDu2Xn9SdL2qUs7Y2AXlw=; fh=alZCUczDNtN4yFLy44SM1yTUliPrh8AgZa0GP8izqo4=; b=iFaxxImm+SnZI2Eixfv7nNYVKoTg+MxqnOr4TJj/i+abOQaCsgrR58k2S93X+YgxH3 BJvD4pLRln8601G6d2iMXq9dPBi45pR/B7oUkBDEqL6FMVTueJIm1yyxEK/2a8QT4BFA 7DkLaoBifDaHFjckyMY6Q9m+XCi4sh3zPO8l/WMyIRLIURXWDsdwvGA+Gz2UINjTfS5C pPHO+8HOBiuzKJjB6+C/Jy0NELCvAHQkxjs3zilwTWh79kmWu9eJ4HYA8UzbOyeCwGZH a0q8VubIRNTe5o7aBQc455Bc77mBhAWbLYkTxOYhjoiLkUD0fxFNZYwmwS/rP/owHdOV zMlA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=AG2dFcQJ; 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-6e254971b6fsi42664226d6.215.2025.01.31.13.09.59 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09:59 -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=AG2dFcQJ; 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 1tdyFR-000595-Cp; Fri, 31 Jan 2025 16:08:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdyF0-00043a-Ov for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:00 -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 1tdyEz-00080c-1t for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:07:54 -0500 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-436341f575fso29196405e9.1 for ; Fri, 31 Jan 2025 13:07:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357671; x=1738962471; 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=jevzQmfhYyewLfy6WntyUbmDu2Xn9SdL2qUs7Y2AXlw=; b=AG2dFcQJyvpmc/cGEmqSOh8kYj4IsCpkwowQjoSbb9MXgqBZwwAr/mIVA9w0VGOABd 1eJIi3SsTUrF7jAgT7NuVWRRXqAsYFFyKWf8qN/qBhthbs2OK6TreFmqvNdMbHr7lUF7 XGIsBH02AGRnJDxofoxC744GbWb/wQMUdZHECWunWE38dALLO2VWQOcBSdkn/wrqNjsV f0TOdj2rSPiqyiBAt8RArFkE0+M962tgg8hhVHyelf/u6nsmQGP2dNZcXq4Pm1bCu4hw CN1gbl48WTAtnjIztP4NdUfIV94jSOE6gKgMaQOnpGgO4STVZYxvShnJ1YGyrbZ96443 saGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357671; x=1738962471; 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=jevzQmfhYyewLfy6WntyUbmDu2Xn9SdL2qUs7Y2AXlw=; b=wQBaXPP9igA3xflmzQ6XH5vZ2AWSDuxGp3jx6VDNtyAFhVzur/WQx6jKwfJ5M4EWmS EdXRuykAR9LzqRbNnlPBBBveHfV7P79EPWyE9kaMGuKwyhLYakOClDAe+N9l4/GheBXV nVeVt3ap7jtPk/W5IO1PMdoxQh5GvkRn9DIXSP1bgwjjjWHbqLcpxojjzxnuQ0nRJP87 RQTb8PafpwqrfobPJMUUkcKbQLQBU2CkMg8cp49sSo3IgvQgbyUGllOcZDzsMNVqUeLV bN7lsAXefuqVHhOC+A+60SRpuQ//A8Tev8g+yQb7zmF/ePeaQlW8Qy6KzLyF8L0hchZh YhbA== X-Gm-Message-State: AOJu0YxQPzQYTL7DGuJTLgtJAclNAqrs8w41aAI8MJOgj1WVOVaSE5vf AqmVv751yItfnT1hcDUS7+KnW8vJ73Egi5PARoM0Iwf05vgz0tSu3ADQaub4IThL5rYVffmxs93 An4A= X-Gm-Gg: ASbGnctVlJougkhnH1RK0F9+k0L2xxyPyEeV9jkHSrYljmV6AvBphcRXnG9D3Ty4Omb hbygbFr3PqFXHUd5XGC940SHutwlVrjV2X9QbgBiJ1p/1HbPZpeQ5Z5dkaAq4VlSOLlxgdOMGvj hLDZYyJJPzJkgpoTVyX3+nZP2aSFJCvV3lfH7thNCRiLrKKYm5+Sng5lT7l03GWPg6XDIeTiYnP RER0HgKk6DNf6krahkjf8dgx3DeHFjZ21hS2cP2hgYYcYBLlQ8+d138a/MdL1Y3GwDBChESbO8a vaXnhwEzopp+rdDByYY9aQoY7mCoFUDg/icS+h5REkoFJd6E7u50dMdhq1b+ZjXZqQ== X-Received: by 2002:a05:600c:5027:b0:434:a26c:8291 with SMTP id 5b1f17b1804b1-438dc40d36emr127085665e9.24.1738357671249; Fri, 31 Jan 2025 13:07:51 -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-438dcc6de7csm103590605e9.32.2025.01.31.13.07.49 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:50 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , =?utf-8?q?Philippe_Mathieu-Dau?= =?utf-8?q?d=C3=A9?= Subject: [PULL 30/36] hw/sd/omap_mmc: Use similar API for "wire up omap_clk" to other OMAP devices Date: Fri, 31 Jan 2025 22:05:13 +0100 Message-ID: <20250131210520.85874-31-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 From: Peter Maydell The approach we've settled on for handling the omap_clk wiring for OMAP devices converted to QDev is to have a function omap_foo_set_clk() whose implementation just sets the field directly in the device's state struct. (See the "TODO" comment near the top of omap.h.) Make omap_mmc do the same. Signed-off-by: Peter Maydell Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250128104519.3981448-6-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daudé --- include/hw/arm/omap.h | 3 +++ hw/sd/omap_mmc.c | 9 ++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/include/hw/arm/omap.h b/include/hw/arm/omap.h index d20c55a8957..7cb87ea89cd 100644 --- a/include/hw/arm/omap.h +++ b/include/hw/arm/omap.h @@ -535,6 +535,9 @@ OBJECT_DECLARE_SIMPLE_TYPE(OMAPMMCState, OMAP_MMC) DeviceState *omap_mmc_init(hwaddr base, MemoryRegion *sysmem, qemu_irq irq, qemu_irq dma[], omap_clk clk); +/* TODO: clock framework (see above) */ +void omap_mmc_set_clk(DeviceState *dev, omap_clk clk); + /* omap_i2c.c */ I2CBus *omap_i2c_bus(DeviceState *omap_i2c); diff --git a/hw/sd/omap_mmc.c b/hw/sd/omap_mmc.c index 1bc8290f9d6..c6b8cf65d71 100644 --- a/hw/sd/omap_mmc.c +++ b/hw/sd/omap_mmc.c @@ -583,6 +583,13 @@ static const MemoryRegionOps omap_mmc_ops = { .endianness = DEVICE_NATIVE_ENDIAN, }; +void omap_mmc_set_clk(DeviceState *dev, omap_clk clk) +{ + OMAPMMCState *s = OMAP_MMC(dev); + + s->clk = clk; +} + DeviceState *omap_mmc_init(hwaddr base, MemoryRegion *sysmem, qemu_irq irq, qemu_irq dma[], omap_clk clk) @@ -594,7 +601,7 @@ DeviceState *omap_mmc_init(hwaddr base, s = OMAP_MMC(dev); sysbus_realize_and_unref(SYS_BUS_DEVICE(s), &error_fatal); - s->clk = clk; + omap_mmc_set_clk(dev, clk); memory_region_add_subregion(sysmem, base, sysbus_mmio_get_region(SYS_BUS_DEVICE(s), 0)); From patchwork Fri Jan 31 21:05:14 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: 861044 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930733wrr; Fri, 31 Jan 2025 13:11:16 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCU+VyKQ8LSHIyzc6PoXGo+SD/6aRjJlZIMiJZHhBXCgFKRu6yDQCOqJhPfQmvuUPZzx19ioYQ==@linaro.org X-Google-Smtp-Source: AGHT+IFn6vTGQSYDoHQz38RE/TLpnEVrWvbMaf4L84X6ot45ThYrgAPnMNkLFwDwIdzy3biddLmg X-Received: by 2002:a0c:c548:0:b0:6e2:4da9:4e2d with SMTP id 6a1803df08f44-6e251b492a7mr102516876d6.9.1738357876270; Fri, 31 Jan 2025 13:11:16 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357876; cv=none; d=google.com; s=arc-20240605; b=A0q7vTYPSOfv/5ESCFGTUaiqd3jCEY6m/M597IXl3FrgQVU4G1QAqaGzmjJpvPmOaA 5MVIfK4B+inSKfMWO6ZLyGnw/Zx224dsbQA8uaWzSQKeXgtN9oV5cO+ZBh+vkcQxfzNG dMoBAt1zKpOf+A4NATKhNJUu1pPhfgJAmx+c7pUqh51dGvbfJ+NzQ9S8n7RfuVJm+q39 MrNZcFS/2fb2KUhQlcU+0nZrl7LB1GZEd4z1q4egB7rk2K7oVnbHUXsTOkSxAgNTW6hg xUINxfeR+9V2UMTuH0CCGna/dMFwpLoolEiel4/1Faob+Snzg5GxIZ5DZ1YuvQgqpbSd rC0Q== 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=ImZMvGufHt1OFcfLj4pxtfCxmfTe94MlGR4mQFWK8lU=; fh=hrttvYDQ/RHeq9ZPl6fx8GLJN/+EeLQ90pmG86Kf6FU=; b=PP9SO9+YH2mmSV7FvRXk5Gu1QgFHzmP2SR2YpIzB8Kj5SsFfsG8G6RgfRaIJB0FyXj 9dYQMfdJj4rCud4tQOKQQ/fsERY0abdvOrxyzIBaxBj7GLcGH9fHFuKewr7UoIhMnq+i mRFTT1bTcehO+ftgb0kuCg0e9JHkDPyt2vvtO8TxIt7pW+JxC8PJJSi6FM3PYY7Xv1aL xVrW/Rtb7+TIAyxXcD1EDzB9D31ynbbp9y0K0au+NboNmRXyPb4fAP8Lv6PhNCg9YyuB 3rW9nO/OBL4HriOQTr0jIqxlBn0uuBJoILGy/POnI9HpbQU2EAOnynWBOnSe9Kik2HKA yGBA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=R+rFUSiS; 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-6e25496ff0csi40558386d6.218.2025.01.31.13.11.16 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:11:16 -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=R+rFUSiS; 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 1tdyFP-0004np-1w; Fri, 31 Jan 2025 16:08:19 -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 1tdyF7-00048M-Hz for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:06 -0500 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyF4-00080s-UT for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:00 -0500 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-43622267b2eso24333965e9.0 for ; Fri, 31 Jan 2025 13:07:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357676; x=1738962476; 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=ImZMvGufHt1OFcfLj4pxtfCxmfTe94MlGR4mQFWK8lU=; b=R+rFUSiS8D60LaiJTjtzJ04NYWs+rKs449oH7up3fx9Wr7YwIRlpB9P3pQLuprHOT0 bYpY0BZj5DEJHwnGiRLNsFk8VyVOzIEkvEjd8EbRaN6V3/c29yJNO9Ii2BdPR3EIBa+2 wbzTuOAiR73w4nrl72lMBg1lDv/Potqf4AuAIHHY/EKzGjH0tFr+YUirjYq3HgRsAaW0 m9WqJRUmorDjK6fxksgn9lJRA5TZ2+YonwY7115p0NlxwSKFNZt6UHWNI7yEygxF2IZX 2Fel5QnVkblhhCIMvJPjMX9l+9smme0iCq+H08Cw44Qrclv+jwd/J5orzMwrWtwii8AX xeYg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357676; x=1738962476; 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=ImZMvGufHt1OFcfLj4pxtfCxmfTe94MlGR4mQFWK8lU=; b=k/e9ejuZQcOUAkBLe45WrF+M/DmjHnlmY+BJZQMW311SlsY9o0i9KdWKkhw8QE4pzY Fc77L3ec0jRzDe/TUj3fo/7MEnBlFOJIQZQDCKzA+JTPXBZh9xLg+K1wrLwUEEL+BmT1 teJ9cggwRNKA1/OehVEYkjXMjUn4aGTXCTtLmAqxu4qrw2dBxgpaZCDYCssfHSO6PBH6 dMkDPnyJb0alHNeBNvxyAV24BJHrmtY9wiSzMPKte1m6dKx8xFru8rYiIwPr71x4VtVW L42CfrJPWJvkAZQyyCeAqn/WERW1zKjrM4fRQq6WaRXcg9p2EmBenUKNuvZaxh3BNkCv cDvA== X-Gm-Message-State: AOJu0Yyi+2TVtgh31+kfynh0SMhL0AIyR8QSH1NSvjlbIjEwHKY+XlJ8 03K8JsbnXiIWQQYCWPB9IQK9dE1MhSmp9zmbFHtmdo6Y4Y4GjHTaoyAo+sEXCBnm05ziq9TOOJ/ TD0k= X-Gm-Gg: ASbGncuqdGOvlCByU/Rtvw1LDMAGtzcN+89AXUPpqAbIlrFU4oMsiAY9fdmP3x7W1sG phF7g9nYaAThJJfdORHymnlh2znYiwCILlEketpYHAwlzBLF2CTMsoMXwne2I8mnhakaHPxeZkI 4+jUWPQQwpV8aoyeLp287QqFtTXvisc3cIcI55lRvWWgPOeIN6+M9udwf2EPYYiSDmK+6pPSxMJ dUzZCEI05U8zRNn17j64lgErA3bec5NNZ98iFWM95Wgvmfc3puUgFHg4Pds05+8YZ1vhsdpTPy+ ZCWq8cuoO0jK3byzWlwlzjLgjS3UuS5Osf5sJ2nK1zNJYNguEklTk5KnWCmw8oJxLg== X-Received: by 2002:a05:600c:4e0c:b0:434:a386:6cf with SMTP id 5b1f17b1804b1-438dc3a8faemr119137725e9.2.1738357675828; Fri, 31 Jan 2025 13:07:55 -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-438dcc27130sm101411555e9.16.2025.01.31.13.07.55 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:55 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , Richard Henderson , =?utf-8?q?Philippe_Mathie?= =?utf-8?q?u-Daud=C3=A9?= Subject: [PULL 31/36] hw/arm/omap1: Inline creation of MMC Date: Fri, 31 Jan 2025 22:05:14 +0100 Message-ID: <20250131210520.85874-32-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@linaro.org; helo=mail-wm1-x332.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 From: Peter Maydell Our style for other conversions of OMAP devices to qdev has been to inline the creation and wiring into omap310_mpu_init() -- see for instance the handling of omap-intc, omap-gpio and omap_i2c. Do the same for omap-mmc. Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250128104519.3981448-7-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daudé --- hw/arm/omap1.c | 15 +++++++++++---- hw/sd/omap_mmc.c | 22 ---------------------- 2 files changed, 11 insertions(+), 26 deletions(-) diff --git a/hw/arm/omap1.c b/hw/arm/omap1.c index 15ba0a0d0c4..ca2eb0d1576 100644 --- a/hw/arm/omap1.c +++ b/hw/arm/omap1.c @@ -3981,10 +3981,17 @@ struct omap_mpu_state_s *omap310_mpu_init(MemoryRegion *dram, if (!dinfo && !qtest_enabled()) { warn_report("missing SecureDigital device"); } - s->mmc = omap_mmc_init(0xfffb7800, system_memory, - qdev_get_gpio_in(s->ih[1], OMAP_INT_OQN), - &s->drq[OMAP_DMA_MMC_TX], - omap_findclk(s, "mmc_ck")); + + s->mmc = qdev_new(TYPE_OMAP_MMC); + sysbus_realize_and_unref(SYS_BUS_DEVICE(s->mmc), &error_fatal); + omap_mmc_set_clk(s->mmc, omap_findclk(s, "mmc_ck")); + + memory_region_add_subregion(system_memory, 0xfffb7800, + sysbus_mmio_get_region(SYS_BUS_DEVICE(s->mmc), 0)); + qdev_connect_gpio_out_named(s->mmc, "dma-tx", 0, s->drq[OMAP_DMA_MMC_TX]); + qdev_connect_gpio_out_named(s->mmc, "dma-rx", 0, s->drq[OMAP_DMA_MMC_RX]); + sysbus_connect_irq(SYS_BUS_DEVICE(s->mmc), 0, + qdev_get_gpio_in(s->ih[1], OMAP_INT_OQN)); if (dinfo) { DeviceState *card = qdev_new(TYPE_SD_CARD); diff --git a/hw/sd/omap_mmc.c b/hw/sd/omap_mmc.c index c6b8cf65d71..a8b541ca788 100644 --- a/hw/sd/omap_mmc.c +++ b/hw/sd/omap_mmc.c @@ -590,28 +590,6 @@ void omap_mmc_set_clk(DeviceState *dev, omap_clk clk) s->clk = clk; } -DeviceState *omap_mmc_init(hwaddr base, - MemoryRegion *sysmem, - qemu_irq irq, qemu_irq dma[], omap_clk clk) -{ - DeviceState *dev; - OMAPMMCState *s; - - dev = qdev_new(TYPE_OMAP_MMC); - s = OMAP_MMC(dev); - sysbus_realize_and_unref(SYS_BUS_DEVICE(s), &error_fatal); - - omap_mmc_set_clk(dev, clk); - - memory_region_add_subregion(sysmem, base, - sysbus_mmio_get_region(SYS_BUS_DEVICE(s), 0)); - qdev_connect_gpio_out_named(dev, "dma-tx", 0, dma[0]); - qdev_connect_gpio_out_named(dev, "dma-rx", 0, dma[1]); - sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, irq); - - return dev; -} - static void omap_mmc_reset_hold(Object *obj, ResetType type) { OMAPMMCState *s = OMAP_MMC(obj); From patchwork Fri Jan 31 21:05:15 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: 861035 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930292wrr; Fri, 31 Jan 2025 13:10:15 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCVfuUGIglQjPk7H3N2hmL+J+pvig1i0vvCFF0BCltVhedTSzsK7i+TGB+POLOZ9ki40JQ35hQ==@linaro.org X-Google-Smtp-Source: AGHT+IFogw1Dzw7tT4VH80iZUGLMCpaxwjN8NTDXVWD3A0FMIePtL+dyVwR2lApvDVOsGk90IquU X-Received: by 2002:a05:620a:2591:b0:7b7:106a:1986 with SMTP id af79cd13be357-7bffcd05530mr1959275285a.27.1738357814903; Fri, 31 Jan 2025 13:10:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357814; cv=none; d=google.com; s=arc-20240605; b=aRCOT8Se1S9QeTN3W1JX4rprmFpkniS+MbIBOuB/qUZOsUk2V+9365mxF7mbuZEzAW tqpbZDEgN1lJeD/9SLwP/Hg6ne9yvyjj2D4uxQViN+lguelVjJwBhEvwXdLJrXH9tqcD NXSntC0zTnSeR60xGu9pT/h4dpmWVGHt5AGKD1NiEX/9L1NF+kDBzP3lKmIbo+9Odmca IBPxhZT7fvyDucPgqiWfI1uiv7kLwGdGeIiBqGcfJnyBsPdXe4Aj0/5ML0UAAKAblsyQ aXYxrA0Exd2LYxebWEpy2B3zgEXFwQRkH5Uxw9G9vYnjxN2CByJKd/NgqS1wpGhnSnyc mowg== 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=HNF/vS+/jQgJ4zkGiuyQoIln9Dsv44LkWIV1cquGqWI=; fh=hrttvYDQ/RHeq9ZPl6fx8GLJN/+EeLQ90pmG86Kf6FU=; b=h4P+hwVhyy9/WtuOUhDRfIjIzrzuctxMyL7dpTn/PY49gU2rh+3Eg0DWS6Mx1HaR5r MtLDSSzsM+AjfN0EQzRSaHJ4nYpeOUVWTO8aTsURW5xpNb4v3dbktB7MBnv2fFxIts+4 2KqYQTZ+1khpw5GjPch2XfiSZ/DSMh5HOtl6wTB0i+WMz5NSNFavte5Y+7va+0YlFZ9Q 7vJVOeYdhPrLCiptJZPm/0dTZ64URF6jkcNqGMp3yQNvbde7Y4ZelWKlzJ7uS41gmhCr 72Q6y/hi59vPpnWijEUGPbZhqH/+ARVia7+3hUxwMLYPx8XyLImRuwwAC4Pan9u+KS/a 4teQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=DyiGMjYh; 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-7c00a90cd1esi436385985a.385.2025.01.31.13.10.14 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:10:14 -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=DyiGMjYh; 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 1tdyFQ-0004yn-5Z; Fri, 31 Jan 2025 16:08:20 -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 1tdyF9-00048o-Me for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:07 -0500 Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyF8-00081G-4T for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:03 -0500 Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-385e27c75f4so2070544f8f.2 for ; Fri, 31 Jan 2025 13:08:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357680; x=1738962480; 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=HNF/vS+/jQgJ4zkGiuyQoIln9Dsv44LkWIV1cquGqWI=; b=DyiGMjYhr4bjRpuUXaRG6wUJQ68QO5io48wQxLHVVRkiBd70DjX4KAjMQDchRbFiU/ mtKB3JmbHN7Sembv88gGWDwfUQXfMyTghIAHu5x+9rGJSMCPbux47dV90nJXADBFQRbW IZqe2bC6xmRPltsgz6FfgnYmj+HtsI7ObFVZWEAPwU/hkKlX2JjRiskqJriVgq8iQYUe zWKhzpH51lUQjZd2emY6YXTtBrJ/17oZzATgxUE4Kfe4UtvSPfTYyCgVWNjvoNbh8K+x aztl2/l7K1oRObww2Z8TZeKem8MeFID+ieUYmFVmf18Vb9doHGBJXIEgLan+dGSdvHDM wtMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357680; x=1738962480; 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=HNF/vS+/jQgJ4zkGiuyQoIln9Dsv44LkWIV1cquGqWI=; b=PkiX7oNHsnInhQvPeHWNGALQ3368jHkvgtftl96J/9tnPSgXC2/MyXF6tkkcNPDmMf hfv6mRN1wCuND8r7oeqeLWtUbUGh/mDTiPoI8kKNckah29mx4K83mpoMHCID5/PkBkZC DUqeKHklGTKCMhkX2sbgkUzSBhOqSaEeq0Ea+Oy1gaaphUJkfx6hA/gSoSqNtgs7cWkN tt+CMSiucnrgf3U0kkR/DK+fpT2Li2IXH+08hfdsPUdEfbRRtk2HBS0Iz+Nu6AfWozOx nJSIEPFxyV679VjnlUajFqfAIK3zKqTimvMUZRarENY0i+u5pZ1jKqxqR23mQ8b9xqZB 3qAw== X-Gm-Message-State: AOJu0YzqqIixki9CsS8UseV7QSC9AOZf+4EzqKv4N6ls61jA6MzN4IvO sUeT5hWaI+sx56OVeecJ1sNFLZmjslSxoDKcirvdnIqKfvaFdxm6MqP9ibCjHOrcdB5enoBtmsr vHxY= X-Gm-Gg: ASbGncuWJjhK8XHk0shhoDK0Xb7y3fXKZogl7XSxnhBGUund5jizNhS3IdBsZS9umOL IN27WxG4bXc1VTIlm448HhP47NvPH4vfbEAV7s7oBVXNIz6sDm8JR80G4r5HxHYMSFOuhCNmOvp 4uIbK+/5HbYR+eZWlhk2Dxyo3qbLviVVLkgDsijArm2zus3iRMGwITJE6ruWI3pWcVf1VJFyHor nrxh/6C+JIulH+xZ0i0E6ik6csoC715MnpyDs8r3B1sUL3u2Gzn5/gVi2Cngqbgf4aAWvpQgTrS ImdBum3sQuuXm31URZJHxcG5k46KtKsnLwEgnNj2v15/v0fRg2IfjNJgwnxi/7/fFA== X-Received: by 2002:a5d:64a1:0:b0:385:f00a:a45b with SMTP id ffacd0b85a97d-38c5196995emr13178613f8f.21.1738357680352; Fri, 31 Jan 2025 13:08:00 -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-38c5c11b851sm5525128f8f.43.2025.01.31.13.07.59 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:07:59 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , Richard Henderson , =?utf-8?q?Philippe_Mathie?= =?utf-8?q?u-Daud=C3=A9?= Subject: [PULL 32/36] hw/sd/omap_mmc: Remove unused coverswitch qemu_irq Date: Fri, 31 Jan 2025 22:05:15 +0100 Message-ID: <20250131210520.85874-33-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::42a; envelope-from=philmd@linaro.org; helo=mail-wr1-x42a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 From: Peter Maydell The coverswitch qemu_irq is never connected to anything, and the only thing we do with it is set it in omap_mmc_reset(). Remove it. Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250128104519.3981448-8-peter.maydell@linaro.org> [PMD: Remove unused 'coverswitch' field] Signed-off-by: Philippe Mathieu-Daudé --- hw/sd/omap_mmc.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/hw/sd/omap_mmc.c b/hw/sd/omap_mmc.c index a8b541ca788..18016a2f2e2 100644 --- a/hw/sd/omap_mmc.c +++ b/hw/sd/omap_mmc.c @@ -35,7 +35,6 @@ typedef struct OMAPMMCState { qemu_irq irq; qemu_irq dma_tx_gpio; qemu_irq dma_rx_gpio; - qemu_irq coverswitch; MemoryRegion iomem; omap_clk clk; uint16_t last_cmd; @@ -70,7 +69,6 @@ typedef struct OMAPMMCState { int cdet_wakeup; int cdet_enable; - int cdet_state; qemu_irq cdet; } OMAPMMCState; @@ -325,7 +323,6 @@ static void omap_mmc_reset(OMAPMMCState *host) host->transfer = 0; host->cdet_wakeup = 0; host->cdet_enable = 0; - qemu_set_irq(host->coverswitch, host->cdet_state); host->clkdiv = 0; omap_mmc_pseudo_reset(host); From patchwork Fri Jan 31 21:05:16 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: 861025 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929958wrr; Fri, 31 Jan 2025 13:09:29 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCV+Tc6b/P2c0Jzwm2jIkDKQkNeMyUaXAK1tDrlzkt4DvAkxBY52f9xGAxnB3p0qKbXYNMhfLw==@linaro.org X-Google-Smtp-Source: AGHT+IG0E3lMYPKn7anu/8a9IQcdVjZoPiJRL5sFvKzlfeWD8pksDDOpblVHIqpBEZecmBQ0NZV5 X-Received: by 2002:a05:622a:130e:b0:467:451b:eb99 with SMTP id d75a77b69052e-46fd0accc3bmr161384241cf.29.1738357769230; Fri, 31 Jan 2025 13:09:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357769; cv=none; d=google.com; s=arc-20240605; b=g+ZCHqCcmLuHUllIDIgScksQ7xwU2vmO/sn63w227mvXyw/BGnNhqYcRhjl+tiGGc0 X2Ct7uX38OW2CtW8g5VnbOEl89OtjMm8fRDi7A66uNFWF0A5d6bWY84p0mM6y2HmeADd 7vXIsTemifbIPXhlXKnWbe0Jvr0tkgsSMTfxmdWTFTAhneWeImf+lACDRtFKFSQwNgTv jbHpZ1lqt+GNQGIsXzkP4RzxxRUGH7SM2mvMQ4u/3zk7r94vQF9/GcIab3neSaqNGR+Y KDGMnRPMcEi5NVjrDzQa9njU+v3MHMcUwucb9ZMISfoxnB+8RF0L0KGCwAgroBrzRsm6 A9Aw== 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=sv4y1qDnwLVDwhBF6zOkYg6dg7wJIzwFJo+NloWuB10=; fh=hrttvYDQ/RHeq9ZPl6fx8GLJN/+EeLQ90pmG86Kf6FU=; b=dnWZm4GwYLK5D29lFBZlhUdRpmNSA7Xz/vuFg0rAPkytooi/89uWgJ8uOZiiuB972c Fm11OCcXIIXEJkGMXduqtV+pjHFAIfBgSkwUloh7ugHCgd7p/h1/19/uQGXWyp7eLxJy B4YZv7XeNqTGRvsORDfO7406EsVRs1vxrMO6IJ8PgaP/J3MEwmaC+WgA+gkh1mVllP8Y 1lzQz65UqTwVetnmJ94hW3jb+9nmMN9aV32K8tF2dxpQexMIxT7YbmlWXDCtjoyo1Tky lufYHMEsFlF+uHY4RC11CmkCmsvF9sdi5Mez//lzEOMjWPFGnndwsOzXOmH16S2AAZB6 XURA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=HSpozAvZ; 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-46fdf1dfb00si46623021cf.481.2025.01.31.13.09.29 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09: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=HSpozAvZ; 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 1tdyFS-0005Nl-AD; Fri, 31 Jan 2025 16:08:22 -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 1tdyFG-0004EJ-Vb for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:13 -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 1tdyFD-00081a-MG for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:10 -0500 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-385dece873cso1230032f8f.0 for ; Fri, 31 Jan 2025 13:08:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357685; x=1738962485; 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=sv4y1qDnwLVDwhBF6zOkYg6dg7wJIzwFJo+NloWuB10=; b=HSpozAvZ3EaxWXbLuaTKO2mrbKejCUxwNgQTNfJ097oa5kJFR/VyThQI/bJ08M86Kt kscKzZneqcPZj7NaheRdGB/Pz8og+UPA4zNkZHSg3Oui26TWSKICY6NTRW9gKtT8rdgu VT5Ah6K5Z+2OfNdVIEO+gC+U9i2qhNYAU72cVIwJTsSsArSKMFR1E8JCLpSXMCB8bOf/ f5J3tyqc0LNZ4Yyhr2yD37SDG1X6DvRqvxxoxhJUJpNAxQ4EPgcD65mkJsh0tIDBjTuJ exFELOC/we3kQ6i0b5eSJr44VdZ/vA0AMJJv/aB2d/hAChja1J+R3flPIwTDBJzflVOo 95Cw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357685; x=1738962485; 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=sv4y1qDnwLVDwhBF6zOkYg6dg7wJIzwFJo+NloWuB10=; b=j5vMclVs/Xj+L8YBJHpI8aCiHUe/QMJnCu8rcBgxyAy9krGHA2DzHFdqiRknxm0aNc pQd95w+wq2hY2ZgK3DINeY80Wsl5RTtjfcCiP2OypUDESw8shrAuQvK6jLxJSBLdNEqA QAN0jIzKkBKFrFYH/1STQoazLxtiArofIjygYY6Drk8MO1isrQZia+aiMYS+G0F6RNOV 7ElS2j9yLsQxYQt9is0PxRTfBGqViCBIyUiMImi17ui5bsHYYLnP5wdWxyJrh+KCyGSP U6WxCB6aFKFhutM2I1V85SJeldHr/xSHWytp9f2dA0UmF1/6r6u485De/3ePqNuHGJ3C 97Zg== X-Gm-Message-State: AOJu0Yxr2QkVf+ANhOGH2NAxRFZOQaaS+3dtVALs74qDIy+eE8iz7nUb MnQfgc7fdRquERWTS52cOYMMmOAwA/5ci0C+RTYr233rkFSgoM8ixL6bbSPz3QZhOJFhufhcKnD xn2I= X-Gm-Gg: ASbGncuQZ6ZHtzrE4aZU7s4RQSNI3vVND7Q9N/RKnlFOMyJDznlFmYrnXFvP7UQg5sT IBI6zyj7t0tySit77tX5YN/0bMCFcygV08K+an5XjkfXnm7iYTXE1nvkDL2VGkVg180+1QqREqa +BA5+KeoJRd5snKt1qcmX4TcAnZIlJMqTxaieAELQwfrznnpLOGTvBI3cHRoqOXTgEKi/+Nhtqb F644QEpRPX3V6Sb1fMJGuq4j6rMl8NmTrau+sIymIWFLsKZM/aOCEqMHPEqxYoMQ8gOqs+0ZGyo /HjVacKoyhJ25LxFyxePomHHba5NOtDmwO8ITsGIDmUfEdco8hbyHbN2vK1yuwrVEA== X-Received: by 2002:a5d:64a1:0:b0:385:f17b:de54 with SMTP id ffacd0b85a97d-38c5193112amr10794729f8f.5.1738357684885; Fri, 31 Jan 2025 13:08:04 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38c5c11b363sm5543100f8f.40.2025.01.31.13.08.04 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:08:04 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , Richard Henderson , =?utf-8?q?Philippe_Mathie?= =?utf-8?q?u-Daud=C3=A9?= Subject: [PULL 33/36] hw/sd/omap_mmc: Untabify Date: Fri, 31 Jan 2025 22:05:16 +0100 Message-ID: <20250131210520.85874-34-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 From: Peter Maydell This is a very old source file, and still has some lingering hard-coded tabs; untabify it. Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250128104519.3981448-9-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daudé --- hw/sd/omap_mmc.c | 124 +++++++++++++++++++++++------------------------ 1 file changed, 62 insertions(+), 62 deletions(-) diff --git a/hw/sd/omap_mmc.c b/hw/sd/omap_mmc.c index 18016a2f2e2..bbe7b971bbe 100644 --- a/hw/sd/omap_mmc.c +++ b/hw/sd/omap_mmc.c @@ -109,11 +109,11 @@ static void omap_mmc_fifolevel_update(OMAPMMCState *host) /* These must match the encoding of the MMC_CMD Response field */ typedef enum { - sd_nore = 0, /* no response */ - sd_r1, /* normal response command */ - sd_r2, /* CID, CSD registers */ - sd_r3, /* OCR register */ - sd_r6 = 6, /* Published RCA response */ + sd_nore = 0, /* no response */ + sd_r1, /* normal response command */ + sd_r2, /* CID, CSD registers */ + sd_r3, /* OCR register */ + sd_r6 = 6, /* Published RCA response */ sd_r1b = -1, } sd_rsp_type_t; @@ -229,7 +229,7 @@ static void omap_mmc_command(OMAPMMCState *host, int cmd, int dir, if (timeout) host->status |= 0x0080; else if (cmd == 12) - host->status |= 0x0005; /* Makes it more real */ + host->status |= 0x0005; /* Makes it more real */ else host->status |= 0x0001; } @@ -338,32 +338,32 @@ static uint64_t omap_mmc_read(void *opaque, hwaddr offset, unsigned size) } switch (offset) { - case 0x00: /* MMC_CMD */ + case 0x00: /* MMC_CMD */ return s->last_cmd; - case 0x04: /* MMC_ARGL */ + case 0x04: /* MMC_ARGL */ return s->arg & 0x0000ffff; - case 0x08: /* MMC_ARGH */ + case 0x08: /* MMC_ARGH */ return s->arg >> 16; - case 0x0c: /* MMC_CON */ + case 0x0c: /* MMC_CON */ return (s->dw << 15) | (s->mode << 12) | (s->enable << 11) | (s->be << 10) | s->clkdiv; - case 0x10: /* MMC_STAT */ + case 0x10: /* MMC_STAT */ return s->status; - case 0x14: /* MMC_IE */ + case 0x14: /* MMC_IE */ return s->mask; - case 0x18: /* MMC_CTO */ + case 0x18: /* MMC_CTO */ return s->cto; - case 0x1c: /* MMC_DTO */ + case 0x1c: /* MMC_DTO */ return s->dto; - case 0x20: /* MMC_DATA */ + case 0x20: /* MMC_DATA */ /* TODO: support 8-bit access */ i = s->fifo[s->fifo_start]; if (s->fifo_len == 0) { @@ -378,42 +378,42 @@ static uint64_t omap_mmc_read(void *opaque, hwaddr offset, unsigned size) omap_mmc_interrupts_update(s); return i; - case 0x24: /* MMC_BLEN */ + case 0x24: /* MMC_BLEN */ return s->blen_counter; - case 0x28: /* MMC_NBLK */ + case 0x28: /* MMC_NBLK */ return s->nblk_counter; - case 0x2c: /* MMC_BUF */ + case 0x2c: /* MMC_BUF */ return (s->rx_dma << 15) | (s->af_level << 8) | (s->tx_dma << 7) | s->ae_level; - case 0x30: /* MMC_SPI */ + case 0x30: /* MMC_SPI */ return 0x0000; - case 0x34: /* MMC_SDIO */ + case 0x34: /* MMC_SDIO */ return (s->cdet_wakeup << 2) | (s->cdet_enable) | s->sdio; - case 0x38: /* MMC_SYST */ + case 0x38: /* MMC_SYST */ return 0x0000; - case 0x3c: /* MMC_REV */ + case 0x3c: /* MMC_REV */ return s->rev; - case 0x40: /* MMC_RSP0 */ - case 0x44: /* MMC_RSP1 */ - case 0x48: /* MMC_RSP2 */ - case 0x4c: /* MMC_RSP3 */ - case 0x50: /* MMC_RSP4 */ - case 0x54: /* MMC_RSP5 */ - case 0x58: /* MMC_RSP6 */ - case 0x5c: /* MMC_RSP7 */ + case 0x40: /* MMC_RSP0 */ + case 0x44: /* MMC_RSP1 */ + case 0x48: /* MMC_RSP2 */ + case 0x4c: /* MMC_RSP3 */ + case 0x50: /* MMC_RSP4 */ + case 0x54: /* MMC_RSP5 */ + case 0x58: /* MMC_RSP6 */ + case 0x5c: /* MMC_RSP7 */ return s->rsp[(offset - 0x40) >> 2]; /* OMAP2-specific */ - case 0x60: /* MMC_IOSR */ - case 0x64: /* MMC_SYSC */ + case 0x60: /* MMC_IOSR */ + case 0x64: /* MMC_SYSC */ return 0; - case 0x68: /* MMC_SYSS */ - return 1; /* RSTD */ + case 0x68: /* MMC_SYSS */ + return 1; /* RSTD */ } OMAP_BAD_REG(offset); @@ -432,7 +432,7 @@ static void omap_mmc_write(void *opaque, hwaddr offset, } switch (offset) { - case 0x00: /* MMC_CMD */ + case 0x00: /* MMC_CMD */ if (!s->enable) break; @@ -447,17 +447,17 @@ static void omap_mmc_write(void *opaque, hwaddr offset, omap_mmc_update(s); break; - case 0x04: /* MMC_ARGL */ + case 0x04: /* MMC_ARGL */ s->arg &= 0xffff0000; s->arg |= 0x0000ffff & value; break; - case 0x08: /* MMC_ARGH */ + case 0x08: /* MMC_ARGH */ s->arg &= 0x0000ffff; s->arg |= value << 16; break; - case 0x0c: /* MMC_CON */ + case 0x0c: /* MMC_CON */ s->dw = (value >> 15) & 1; s->mode = (value >> 12) & 3; s->enable = (value >> 11) & 1; @@ -477,27 +477,27 @@ static void omap_mmc_write(void *opaque, hwaddr offset, omap_mmc_pseudo_reset(s); break; - case 0x10: /* MMC_STAT */ + case 0x10: /* MMC_STAT */ s->status &= ~value; omap_mmc_interrupts_update(s); break; - case 0x14: /* MMC_IE */ + case 0x14: /* MMC_IE */ s->mask = value & 0x7fff; omap_mmc_interrupts_update(s); break; - case 0x18: /* MMC_CTO */ + case 0x18: /* MMC_CTO */ s->cto = value & 0xff; if (s->cto > 0xfd && s->rev <= 1) printf("MMC: CTO of 0xff and 0xfe cannot be used!\n"); break; - case 0x1c: /* MMC_DTO */ + case 0x1c: /* MMC_DTO */ s->dto = value & 0xffff; break; - case 0x20: /* MMC_DATA */ + case 0x20: /* MMC_DATA */ /* TODO: support 8-bit access */ if (s->fifo_len == 32) break; @@ -508,18 +508,18 @@ static void omap_mmc_write(void *opaque, hwaddr offset, omap_mmc_interrupts_update(s); break; - case 0x24: /* MMC_BLEN */ + case 0x24: /* MMC_BLEN */ s->blen = (value & 0x07ff) + 1; s->blen_counter = s->blen; break; - case 0x28: /* MMC_NBLK */ + case 0x28: /* MMC_NBLK */ s->nblk = (value & 0x07ff) + 1; s->nblk_counter = s->nblk; s->blen_counter = s->blen; break; - case 0x2c: /* MMC_BUF */ + case 0x2c: /* MMC_BUF */ s->rx_dma = (value >> 15) & 1; s->af_level = (value >> 8) & 0x1f; s->tx_dma = (value >> 7) & 1; @@ -534,38 +534,38 @@ static void omap_mmc_write(void *opaque, hwaddr offset, break; /* SPI, SDIO and TEST modes unimplemented */ - case 0x30: /* MMC_SPI (OMAP1 only) */ + case 0x30: /* MMC_SPI (OMAP1 only) */ break; - case 0x34: /* MMC_SDIO */ + case 0x34: /* MMC_SDIO */ s->sdio = value & (s->rev >= 2 ? 0xfbf3 : 0x2020); s->cdet_wakeup = (value >> 9) & 1; s->cdet_enable = (value >> 2) & 1; break; - case 0x38: /* MMC_SYST */ + case 0x38: /* MMC_SYST */ break; - case 0x3c: /* MMC_REV */ - case 0x40: /* MMC_RSP0 */ - case 0x44: /* MMC_RSP1 */ - case 0x48: /* MMC_RSP2 */ - case 0x4c: /* MMC_RSP3 */ - case 0x50: /* MMC_RSP4 */ - case 0x54: /* MMC_RSP5 */ - case 0x58: /* MMC_RSP6 */ - case 0x5c: /* MMC_RSP7 */ + case 0x3c: /* MMC_REV */ + case 0x40: /* MMC_RSP0 */ + case 0x44: /* MMC_RSP1 */ + case 0x48: /* MMC_RSP2 */ + case 0x4c: /* MMC_RSP3 */ + case 0x50: /* MMC_RSP4 */ + case 0x54: /* MMC_RSP5 */ + case 0x58: /* MMC_RSP6 */ + case 0x5c: /* MMC_RSP7 */ OMAP_RO_REG(offset); break; /* OMAP2-specific */ - case 0x60: /* MMC_IOSR */ + case 0x60: /* MMC_IOSR */ if (value & 0xf) printf("MMC: SDIO bits used!\n"); break; - case 0x64: /* MMC_SYSC */ - if (value & (1 << 2)) /* SRTS */ + case 0x64: /* MMC_SYSC */ + if (value & (1 << 2)) /* SRTS */ omap_mmc_reset(s); break; - case 0x68: /* MMC_SYSS */ + case 0x68: /* MMC_SYSS */ OMAP_RO_REG(offset); break; From patchwork Fri Jan 31 21:05:17 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: 861037 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp930376wrr; Fri, 31 Jan 2025 13:10:24 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUh8QuS3yQWpZ+3WkeJe3l/5DmnstVPcCqTmDfahnjVvmncZaGiv2fRyavgwlGvNGSMHK5ouw==@linaro.org X-Google-Smtp-Source: AGHT+IG9qGNf1/FHInhaEOAQXs+ED327hJNcbat/TGtM9xmPUdE4iSK6vL8FIbXOwrJKegEMI6V0 X-Received: by 2002:a05:6214:29e3:b0:6d8:d5f6:8c75 with SMTP id 6a1803df08f44-6e243bb8d4dmr127260366d6.12.1738357824546; Fri, 31 Jan 2025 13:10:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357824; cv=none; d=google.com; s=arc-20240605; b=CuVZbrWqWNIY8h3tv+QgDfPv1jIvxCv6Mq64YcwlvLX6ADCB8owMZ26ff1JgG/MIvh QRk2MtrXDd2ePTn+hX+GcjLBTwGLGJ+o7ejPLl7Y4JG+9YIBPGEyttjlKQAXxUdG+Nn7 vFNKg4h9hKvUNYKdwv3L1qxbEqV/yX4WeZJiTefrV2/HFtrY+uCZMl1h9ENo1jdwJgkY s395DaFYT0SZJYtdc/fVVv2Enu8ekxcVK9kdkpJRlt4nurSkbCv1EHOXvtMsQmgEEtGK REcDcc4ZdeDbMWKyiNABXjEf20DLMUoKg3UJCZBsOaXfObuLM2+9O/tc+80MEhWqPobo L3Ww== 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=8oFzU0KJNpu3qZQuyVEhKtfFAAIRsXmhtD1aPMM/s0s=; fh=hrttvYDQ/RHeq9ZPl6fx8GLJN/+EeLQ90pmG86Kf6FU=; b=NPCdy+/O5wLgb/46ONhq34lsXirFkKCtdDd+eOvgAAgv3ZA2cLUaK0BKvQlCeG+6v6 md+VAG1x9M0ple9zr3EpjCStmIIcq3+OqEtYgL2wO8wBIEpamhLJn+uRFlqNfCTNjHB0 9ndlFG0o8adGiEj2F0ReLod+L/UT4cKiokhougTnwszG6OTz9OsgGBU9tvqYes1B2ZV7 JYCgqTDrE1s8UaenBs/GHeXZWDOHYK53vmOx4zNGOSe2n9cqn7FXAoTB7k2fy7JKnRgr XEUAAYTuQb9tQ8MrMs5RAaK+6S3JSWxP4XjljbYUQl1svOn6Kb6Ili5+v81rYe0CxINK 1GWw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=s1isZdHw; 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-6e25497273esi45540396d6.208.2025.01.31.13.10.24 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:10:24 -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=s1isZdHw; 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 1tdyFU-0005gn-H7; Fri, 31 Jan 2025 16:08:24 -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 1tdyFJ-0004GY-7c for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:14 -0500 Received: from mail-wr1-x42e.google.com ([2a00:1450:4864:20::42e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyFH-00081l-I7 for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:13 -0500 Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-3862b40a6e0so1588553f8f.0 for ; Fri, 31 Jan 2025 13:08:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357689; x=1738962489; 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=8oFzU0KJNpu3qZQuyVEhKtfFAAIRsXmhtD1aPMM/s0s=; b=s1isZdHwFPbBDVMdH/KjesIftd6tKDIGafZVp4jtESUZnsRE6uASXAyf2NkL3cSd50 ionYtTgfCRoR8bC2x50kBtNnYMu+jaP0f/JfgVbOuANVZKvlVGKB1nVEtPdDXZdTTtvm 9Oi2OAsYzSKAtelQ8pQR3IMp/xre+7S4yd/10K6wtqztCHnWFbPTgdaEyeKSrGumoMrd KC7iBoaKwvKY1CziQDIxG1mFW13Qbr2+WX8HOEyYbBNagUfX+jjGVIeoIXpiVQasIN0n T7HcrUuX+tmoOBy4BWXs3vuOR+ttBTMaCX2KymfXXdsBXyyYsSqtTRNQOpPjq/WdPGeG brnw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357689; x=1738962489; 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=8oFzU0KJNpu3qZQuyVEhKtfFAAIRsXmhtD1aPMM/s0s=; b=jt8dsrDcMUWxmbWQkqSdWCGqynMDSrMnLhI6HMKDazHR8e7JeXUWRriVCR9qrffYLD sdBnxmAIxdZ6xaYvqC6CwaCaRF+CYo91O7lB69c/WVoPtkFcOvrKfIEv1I/843VHNvEk treGRCe/1hSb0gRfMZ6IaZmKS+/wYmgyFDOorUKgoD82krXQYX2X198dBjnvklVGUuBt xrhiEbc/5Njx+EDErPJLG2xtEL7OxPAx/aqeBykBbbi+crlsUzF4022bchVJr00vwyjl zSX7KkUEN1coAszxOvQRc6cKwskE8tW0Dp8dE4t4Ys+ukznhHPoRQWag/MC9Z37VzPLA qRuw== X-Gm-Message-State: AOJu0YxRuJOay9/8D2Ce/IT+9Ttp5tsc8Iop69ZyZnsHle6GvaLy/6xU h9cckMq5FxOOBO2xwB2UlPBQHy7zeatzz6x5/rIn9plKXOP837VzXllv446ModGOGbw3TdFnj9n LQ9U= X-Gm-Gg: ASbGncsOPIMGE39XNomKPVZdAl8PQrVbvBR3Dl71KY0sQQvLWZSQ17xvCcAfjsgXHlK LTO8CWGVa/yyCQCkjWYiiZFJjZ9ALdsUPyZ/ovUnNvVqKT50CLNkcd8HhnYfzhxACgWMi8dTXPV 8QWS356rMpgL0PyiD8BkXllqvTmRpRIBioICYSxruqA8qgQuxD8sqlI+fkMn95Z/jJVVvKn43e8 JqJ7ZNcMoJJ2grycifYdBCyPLhpKStsIP8v6qpgAIYdY8bgHxhFWiPzhRaWllnNH/la7QOf9Y8/ ptfhG3nyUL4tsn4o4FCikeDuMr32P2w/v2DQaJY0ao8tKcVNc96HNIVNFfCqddYfzw== X-Received: by 2002:a5d:584b:0:b0:38a:8b2c:53ad with SMTP id ffacd0b85a97d-38c51e91b14mr12618716f8f.39.1738357689555; Fri, 31 Jan 2025 13:08:09 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-438dcc2ede0sm102340385e9.21.2025.01.31.13.08.08 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:08:09 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , Richard Henderson , =?utf-8?q?Philippe_Mathie?= =?utf-8?q?u-Daud=C3=A9?= Subject: [PULL 34/36] hw/sd: Remove unused 'enable' method from SDCardClass Date: Fri, 31 Jan 2025 22:05:17 +0100 Message-ID: <20250131210520.85874-35-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::42e; envelope-from=philmd@linaro.org; helo=mail-wr1-x42e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 From: Peter Maydell The SDCardClass has an 'enable' method, but nothing actually invokes it. The underlying implementation is sd_enable(), which is documented in sdcard_legacy.h as something that should not be used and was only present for the benefit of the now-removed nseries boards. Unlike all the other method pointers in SDCardClass, this one doesn't have an sdbus_foo() function wrapper in hw/sd/core.c. Remove the unused method. Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250128104519.3981448-10-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daudé --- include/hw/sd/sd.h | 1 - hw/sd/sd.c | 1 - 2 files changed, 2 deletions(-) diff --git a/include/hw/sd/sd.h b/include/hw/sd/sd.h index f2458f37b3c..d6bad175131 100644 --- a/include/hw/sd/sd.h +++ b/include/hw/sd/sd.h @@ -119,7 +119,6 @@ struct SDCardClass { void (*set_voltage)(SDState *sd, uint16_t millivolts); uint8_t (*get_dat_lines)(SDState *sd); bool (*get_cmd_line)(SDState *sd); - void (*enable)(SDState *sd, bool enable); bool (*get_inserted)(SDState *sd); bool (*get_readonly)(SDState *sd); void (*set_cid)(SDState *sd); diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 0330d432fd0..f781fd1641d 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -2831,7 +2831,6 @@ static void sdmmc_common_class_init(ObjectClass *klass, void *data) sc->read_byte = sd_read_byte; sc->receive_ready = sd_receive_ready; sc->data_ready = sd_data_ready; - sc->enable = sd_enable; sc->get_inserted = sd_get_inserted; sc->get_readonly = sd_get_readonly; } From patchwork Fri Jan 31 21:05:18 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: 861026 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929985wrr; Fri, 31 Jan 2025 13:09:34 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUyDbKzC0/o30h+yBZ0+/hlR1/9SDIH6GhyJqJ8BzeKFkXjg8HcVNLLj55PwJLx7h0vkEm31g==@linaro.org X-Google-Smtp-Source: AGHT+IH5FEm1VLcNgHI8ap6aKK7hDXi0riS2YMeGhvH45DORZuMAbitio27qDihYxtv42PVCqiWs X-Received: by 2002:a05:622a:1189:b0:467:b7de:da8a with SMTP id d75a77b69052e-46fd0a80792mr201751011cf.6.1738357773904; Fri, 31 Jan 2025 13:09:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357773; cv=none; d=google.com; s=arc-20240605; b=AXwHskDuB6wHruiaIt77KphCfBhrolXqCj5whoTZaXjiIADA1j2D5HK3oTAda7gPt6 bA3rgCGU0Ps4SzPhzTxRJjxpm/kKfykQREvaccl/ktkUpKsiMUyRCQlfHo2y++TuMDSI W6zP/oMSOA/qO3h9AkgTMF75/YiGzW4CpwwDMzEOxytnBpqRzbWMflFKMHFxaHAMOAje FFzKO/KMxIeYK+1L+oa611QFERhfRuPAyEVKHf4GrkilDwfKE4W9d8Wg3xgpibzKG0G5 4t7k83+bdQcGv7ahv4XDbwkzmQF3h3silh3JA5ytyForZtDRdF63VdPHuIsW/Yaamo9W Rxvw== 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=tDN1ii+damKmSXlqt4UdR7pxlDb9QSMG1FV0pXZv6Hg=; fh=I+v+y+xiw7qqEg+wqnfPbaPCwEK5HZqF9Jykg1FEX24=; b=dQ8mBi4JTgune20PAn3yQZeUB1i6H4V37TaPPpvaAMtD128Ild5mOddbjzvlndAsXm kPa+wUgHNZQydSYH9Hqu1OZ1TamKb65vr2PsN3Q9FYf+MnR6E2LcjWB5D0boM+GJMeBj YzZYu6zVQ+O5d6BdBoc2N/EJ+4h8VXgish3+kjJSX2ZtuqQwiX7RDlGkbcTNDHDd+EEV LJ3c4ZfHLNJT+sPT/QOsKT4DO8GZE9SI2TB2qOOjaJZ3wu/dq0yDggEGDi7UdzVorFpH YdhPuXC09Bkm0i+4/vAi9v7AgHQiNHAAZjRQOztY3ewvGJxMUIFZWamVQ4/DIZwhe+Jy BxVA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=yj+M4P0V; 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-46fdf1e235asi44367611cf.548.2025.01.31.13.09.33 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:09:33 -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=yj+M4P0V; 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 1tdyFS-0005Py-MC; Fri, 31 Jan 2025 16:08:22 -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 1tdyFO-0004hU-2q for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:18 -0500 Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdyFM-00082E-08 for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:17 -0500 Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-436345cc17bso18803785e9.0 for ; Fri, 31 Jan 2025 13:08:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357694; x=1738962494; 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=tDN1ii+damKmSXlqt4UdR7pxlDb9QSMG1FV0pXZv6Hg=; b=yj+M4P0VGlnUbcHhRR1CNkJvsQdAKUEeVjFVwIz13mbKtRX8IAvYFQsksBTeEBEa9K kOMOUka2CYlReOsUGiu6EPqwfIsOgoFyIKyZfmuZp6v8v7SAw9FevOcvnlwY0y9PsjMm l+qu7CH6zWD7cW1st1Kk6F8R3P1Uva5AKhxD2gN2uygnxtcgAg2+9zPmJLzLNYKI+4Ca w1U7vZU8S7UA2hJvAog78Dj+e2gncQPMOJA6UKHdoNWIvYKcHCPnFc78tggb9BQV3HGj 7hz4tzBjglF9FNR04EH7ufa6dtYGE75EUd8JRsBr8WY2idfcXf7vaYmFG//pSsKW2AXt ZnHg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357694; x=1738962494; 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=tDN1ii+damKmSXlqt4UdR7pxlDb9QSMG1FV0pXZv6Hg=; b=bprCnGNrmaUVPIAxkVNrVJ9DgR5ABMNGUT304MScbs/XwBHC4UIErxjgjBdy2b0zna co3OMbIV3lA5KgOuGLX8VjlRjLnN96afosq1Go7544phLJxZyFlc/SFepVlFnNbJvOow 9OIYR5xPyx9KO8aJt9UJdAAs27z45slOOHtTZvN/VOGz0zcyp3GwApSwTMwQj3KLGJ1c nfPWQEJxZVgT9gjdIORuPUgeQ7PjfzJfu3z3K6CkmirqIUe+9oeA2AmTEbZsKqpUZSw0 3wX1DNETW2xKX6l75Jr4XDYXfkxPMb2uP/tx8l3IsDPqEM0Bzkpn/ak84Bnu0L52WplW zLdg== X-Gm-Message-State: AOJu0YwETWO7E9TnaaPJ+Lk+DkVe71/xxh3jcKnnnu+UeLFr0YeSn/0u CfD3N/z5Q4H8HsqIhMicwpqe1YageVTFjUYwSjN1NcuOX31zJvyKBiFx8lPGCO87H92i7bTec7z KRYc= X-Gm-Gg: ASbGncs9ZwP/0qTeQmaX2HZDZBggHuwxifFUslx5cPF4JgvUkraZWkrbdIv5NlvSdYm PtjeJ4LAdaRRC3J/c2DwdBWDED+KCZodDL5ETCEh1xcmYAcMQJDNdJt5H//jPEqkRD3ncIlJwc6 /5AElKB+W4WjM497CMWeYcyY36I2GeJHHeLf++V96K93ljru8jsWlVkTj7NajOFSa6d6Cddih47 DWyU2C+M79ixCmGGFlw0VN5Y/z5yK9nT2gBG15cIe+VY05r6V5ZjHkEFSAvgKBPxfU29e6xZvTz uXE/losEmI5CaOAudcRyfYfR2DdSOiQDbuo8I3fbeS3chs+fJp8dFN8e7CcnXhCQlA== X-Received: by 2002:a05:600c:4e01:b0:435:136:75f6 with SMTP id 5b1f17b1804b1-438dc34b179mr133719435e9.0.1738357694143; Fri, 31 Jan 2025 13:08:14 -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-38c5c102ee0sm5681437f8f.37.2025.01.31.13.08.13 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:08:13 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , Richard Henderson , =?utf-8?q?Philippe_Mathie?= =?utf-8?q?u-Daud=C3=A9?= , Markus Armbruster Subject: [PULL 35/36] hw/sd: Remove unused legacy functions, stop killing mammoths Date: Fri, 31 Jan 2025 22:05:18 +0100 Message-ID: <20250131210520.85874-36-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32b; envelope-from=philmd@linaro.org; helo=mail-wm1-x32b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=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 From: Peter Maydell The sdcard_legacy.h header defines function prototypes for the "legacy" SD card API, which was used by non-qdevified SD controller models. We've now converted the only remaining non-qdev SD controller, so we can drop the legacy API. Entirely unused functions: sd_init(), sd_set_cb(), sd_enable() Functions which now become static inside sd.c (they are the underlying implementations of methods on SDCardClass): sd_do_command(), sd_write_byte(), sd_read_byte() Removal of sd_init() means that we can also remove the me_no_qdev_me_kill_mammoth_with_rocks flag, the codepaths that were only reachable when it was set, and the inserted_cb and readonly_cb qemu_irq lines that went with that. Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Markus Armbruster Message-ID: <20250128104519.3981448-11-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daudé --- include/hw/sd/sdcard_legacy.h | 50 ----------------------- hw/sd/sd.c | 77 ++++------------------------------- 2 files changed, 8 insertions(+), 119 deletions(-) delete mode 100644 include/hw/sd/sdcard_legacy.h diff --git a/include/hw/sd/sdcard_legacy.h b/include/hw/sd/sdcard_legacy.h deleted file mode 100644 index 0dc38895551..00000000000 --- a/include/hw/sd/sdcard_legacy.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * SD Memory Card emulation (deprecated legacy API) - * - * Copyright (c) 2006 Andrzej Zaborowski - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, - * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A - * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY - * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -#ifndef HW_SDCARD_LEGACY_H -#define HW_SDCARD_LEGACY_H - -#include "hw/sd/sd.h" - -/* Legacy functions to be used only by non-qdevified callers */ -SDState *sd_init(BlockBackend *blk, bool is_spi); -int sd_do_command(SDState *card, SDRequest *request, uint8_t *response); -void sd_write_byte(SDState *card, uint8_t value); -uint8_t sd_read_byte(SDState *card); -void sd_set_cb(SDState *card, qemu_irq readonly, qemu_irq insert); - -/* sd_enable should not be used -- it is only used on the nseries boards, - * where it is part of a broken implementation of the MMC card slot switch - * (there should be two card slots which are multiplexed to a single MMC - * controller, but instead we model it with one card and controller and - * disable the card when the second slot is selected, so it looks like the - * second slot is always empty). - */ -void sd_enable(SDState *card, bool enable); - -#endif /* HW_SDCARD_LEGACY_H */ diff --git a/hw/sd/sd.c b/hw/sd/sd.c index f781fd1641d..74bb7f39bbf 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -39,7 +39,6 @@ #include "hw/registerfields.h" #include "system/block-backend.h" #include "hw/sd/sd.h" -#include "hw/sd/sdcard_legacy.h" #include "migration/vmstate.h" #include "qapi/error.h" #include "qemu/bitmap.h" @@ -120,10 +119,6 @@ typedef struct SDProto { struct SDState { DeviceState parent_obj; - /* If true, created by sd_init() for a non-qdevified caller */ - /* TODO purge them with fire */ - bool me_no_qdev_me_kill_mammoth_with_rocks; - /* SD Memory Card Registers */ uint32_t ocr; uint8_t scr[8]; @@ -177,8 +172,6 @@ struct SDState { uint32_t data_offset; size_t data_size; uint8_t data[512]; - qemu_irq readonly_cb; - qemu_irq inserted_cb; QEMUTimer *ocr_power_timer; bool enable; uint8_t dat_lines; @@ -892,17 +885,10 @@ static void sd_cardchange(void *opaque, bool load, Error **errp) trace_sdcard_ejected(); } - if (sd->me_no_qdev_me_kill_mammoth_with_rocks) { - qemu_set_irq(sd->inserted_cb, inserted); - if (inserted) { - qemu_set_irq(sd->readonly_cb, readonly); - } - } else { - sdbus = SD_BUS(qdev_get_parent_bus(dev)); - sdbus_set_inserted(sdbus, inserted); - if (inserted) { - sdbus_set_readonly(sdbus, readonly); - } + sdbus = SD_BUS(qdev_get_parent_bus(dev)); + sdbus_set_inserted(sdbus, inserted); + if (inserted) { + sdbus_set_readonly(sdbus, readonly); } } @@ -1000,48 +986,6 @@ static const VMStateDescription sd_vmstate = { }, }; -/* Legacy initialization function for use by non-qdevified callers */ -SDState *sd_init(BlockBackend *blk, bool is_spi) -{ - Object *obj; - DeviceState *dev; - SDState *sd; - Error *err = NULL; - - obj = object_new(is_spi ? TYPE_SD_CARD_SPI : TYPE_SD_CARD); - dev = DEVICE(obj); - if (!qdev_prop_set_drive_err(dev, "drive", blk, &err)) { - error_reportf_err(err, "sd_init failed: "); - return NULL; - } - - /* - * Realizing the device properly would put it into the QOM - * composition tree even though it is not plugged into an - * appropriate bus. That's a no-no. Hide the device from - * QOM/qdev, and call its qdev realize callback directly. - */ - object_ref(obj); - object_unparent(obj); - sd_realize(dev, &err); - if (err) { - error_reportf_err(err, "sd_init failed: "); - return NULL; - } - - sd = SD_CARD(dev); - sd->me_no_qdev_me_kill_mammoth_with_rocks = true; - return sd; -} - -void sd_set_cb(SDState *sd, qemu_irq readonly, qemu_irq insert) -{ - sd->readonly_cb = readonly; - sd->inserted_cb = insert; - qemu_set_irq(readonly, sd->blk ? !blk_is_writable(sd->blk) : 0); - qemu_set_irq(insert, sd->blk ? blk_is_inserted(sd->blk) : 0); -} - static void sd_blk_read(SDState *sd, uint64_t addr, uint32_t len) { trace_sdcard_read_block(addr, len); @@ -2196,8 +2140,8 @@ static bool cmd_valid_while_locked(SDState *sd, unsigned cmd) return cmd_class == 0 || cmd_class == 7; } -int sd_do_command(SDState *sd, SDRequest *req, - uint8_t *response) { +static int sd_do_command(SDState *sd, SDRequest *req, + uint8_t *response) { int last_state; sd_rsp_type_t rtype; int rsplen; @@ -2349,7 +2293,7 @@ static bool sd_generic_read_byte(SDState *sd, uint8_t *value) return false; } -void sd_write_byte(SDState *sd, uint8_t value) +static void sd_write_byte(SDState *sd, uint8_t value) { int i; @@ -2478,7 +2422,7 @@ void sd_write_byte(SDState *sd, uint8_t value) } } -uint8_t sd_read_byte(SDState *sd) +static uint8_t sd_read_byte(SDState *sd) { /* TODO: Append CRCs */ const uint8_t dummy_byte = 0x00; @@ -2561,11 +2505,6 @@ static bool sd_data_ready(SDState *sd) return sd->state == sd_sendingdata_state; } -void sd_enable(SDState *sd, bool enable) -{ - sd->enable = enable; -} - static const SDProto sd_proto_spi = { .name = "SPI", .cmd = { From patchwork Fri Jan 31 21:05:19 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: 861022 Delivered-To: patch@linaro.org Received: by 2002:adf:fb05:0:b0:385:e875:8a9e with SMTP id c5csp929636wrr; Fri, 31 Jan 2025 13:08:44 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUcWsh8Qh4lARya7yQOBmZq3FXDcqtvgf9Aw/ls0y9ky4gFSDDakKxbCgSCy+Wuz5S1zrWQyQ==@linaro.org X-Google-Smtp-Source: AGHT+IEPEs/Rljtz0GL7GIQsmYrUoSu0WZmJxtAIkU4ZAKAw/WeUdzw4YkOUcvWC5vTpuUVNIimz X-Received: by 2002:a05:622a:408b:b0:46c:791f:bf5e with SMTP id d75a77b69052e-46fd0b91c34mr189067801cf.42.1738357724228; Fri, 31 Jan 2025 13:08:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1738357724; cv=none; d=google.com; s=arc-20240605; b=XXkgR7RAqX8haYDjt0WY8ptXpB9ijorhQurBDrvxffIMjwINPUwxm7+A+wldfHznPs 9lO/eYmzB3XK/asadcRlyP5RNwKhoU28bJncrYZNbk4W7cQe2rzZNCtsmKDg1EvOZkuJ Zn7v/oQo9TnJ8RnVPUpUjX53PuboQ1HjPW1rsGC5AWZTuU/uSa1ho7pYnMn61n1oS12N fseeqZdpHa0kFWTx3mtAKUyeIm3PNmmF+69dpdUKDm8KUQJGQhGmdrXx4PlQglL6W32c ep4UDu3QwT4tJ9qWlIDe1CKS6g0BJ3i+dMh22UMJ0pVHlPjEeyDxysJsUgY+5JHjHLl3 1z1A== 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=b7A36aAFQQQuLpfdth227W6S0BPoJE/W3cgZ7jyQu4k=; fh=hrttvYDQ/RHeq9ZPl6fx8GLJN/+EeLQ90pmG86Kf6FU=; b=M6RG4tzzaOxwfviWes5pL4IiiDV7bZfU7x1LmFk1p0nzfdox4KI2GPlA+jz69wJwiv 5uCFl6B4ZMyevAiGbhdMeNrjZC7c+YUsbRnkFfrkcQ75+BDtnZXjHV80UxiN4Dtznc9R t1Rk0gCNXQb1OrJ+1Ltk+CMo+aaVyEmGOCwQDSJowYoqy+AmXhYn3KHAqXH7q9h4heJd RsUZe/9aJ26vlrPPvap6FrhK+/tnH3jIU7RivIhFvmRRfk5DlQ1HI+Tv4XuTRKtX14oT R9kx6Blt1lFcLhxVB/n+DL517qDcv6HF663Mr2fCUWc9x7IdR5GVB2XwngVsyU3pGqSM EU3w==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=tyvg2Hxa; 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-46fdf0d53b3si48903001cf.183.2025.01.31.13.08.44 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 31 Jan 2025 13:08: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=tyvg2Hxa; 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 1tdyFc-0006WT-6y; Fri, 31 Jan 2025 16:08: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 1tdyFU-0005gm-3t for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:24 -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 1tdyFS-00082f-A9 for qemu-devel@nongnu.org; Fri, 31 Jan 2025 16:08:23 -0500 Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-4363ae65100so29304165e9.0 for ; Fri, 31 Jan 2025 13:08:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738357700; x=1738962500; 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=b7A36aAFQQQuLpfdth227W6S0BPoJE/W3cgZ7jyQu4k=; b=tyvg2HxaNo4DzRYMzDMp2UcmJq8Cx57PY0001jkdU8f4bVkW+rUyMJkw82SkJ7RSkJ BgYr3xr3lO4f98Hpype78DHoKlReBD/+A2ZZdJz3kAaA1PFSrsvhmxOIPTeA/RU9LlOC J8sn6+FybvT0sYKeQvdAzGwSnM4orBlH+H/iClMJvOpBGnXCFfJaBSWyh7spK1JtCpAL VYJYYMsEUFam97wV79YfLmCxTwioDKl+GOJO6Se3GU2Z8CmAI/gqnZlXXSVzgVTiAl/d hPtr250p8BwT+EnLf73kmnrT4MhDF378sdLU10hypnCrKhOHSv7VmQIt2Vqa0RKJV3Ty ARBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738357700; x=1738962500; 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=b7A36aAFQQQuLpfdth227W6S0BPoJE/W3cgZ7jyQu4k=; b=CU5meFbCQoj6WAlpwmiDestAYjvE0atu6P3pnDyP7fQXPDFrFIugv5wxRtmVyuBbQ3 rfOKEpYImy0iZUxdEnV4HPI/I++7LRn8Gqv6/tND3xCJOjEc55phERkR4IjlB54PWTXt PkCqrHExYb47xvBDPUPgQ9n7qBBhyADK8KuYIHeEuu19Ys6d5WDYmC288sllmsUKEJ+g Uwunhd+WAJvJU0UfDf+DBde7Z3x7SpDX0MKhsoFM6/Bg5H3vKd8Z44En3duXrFziD4WX DUYHSW15Ge1y/1vjnNLlTsJqY+x/F4cqphgmdGDNCnoP+wEZlKmjfX7oDpqKDcMK0ZY1 SlEQ== X-Gm-Message-State: AOJu0YxhhRbVmcbhdyToP0sAG86w96Z5TrpZE2VqJxMmA72gs42r73bf SRYFmQjkOdJuhObGU7FC1Mt3QMZtDNA7lio7if7tPUQfKgkZDqnpq4Di0bMbsu+JDTLi8bwe50T oU44= X-Gm-Gg: ASbGncuqSf1aJ1uhi51wgcq1nPo5qZboc6mx5EWj7C2osL7q3rGn0nomMtSfEm4V+2W JoxYySOWY9MCGclScj4Cj/IvN1/eE+Q0d2giedankQSzqd4SN/NKs8MA2uD/K04MGt5lGwWhT8A 8DCz/gOl03ZYGCff5AbnkikMEaAH/hT+li//ltDifqlUuuQty24E9bbBLi+ix4GszxJer6hgeJ/ R0uG3mOpTYwmamxXdasyKDo6AOT7uTYGbKrYqjibX3OneVwoS9hz852CsSOP6sd/0yABNjPugIH hBFQt8saF3QbTqL5rjoU0SfgyiuyeW8Vd+zFwG7mD8/AEEkvHX3+f2PSTBisySwQQQ== X-Received: by 2002:a05:600c:3b0a:b0:434:f753:6012 with SMTP id 5b1f17b1804b1-438dc3cae6cmr141546445e9.17.1738357700244; Fri, 31 Jan 2025 13:08: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 5b1f17b1804b1-438e244eb0dsm67206995e9.27.2025.01.31.13.08.17 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 31 Jan 2025 13:08:19 -0800 (PST) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , Richard Henderson , =?utf-8?q?Philippe_Mathie?= =?utf-8?q?u-Daud=C3=A9?= Subject: [PULL 36/36] hw/sd: Remove unused SDState::enable Date: Fri, 31 Jan 2025 22:05:19 +0100 Message-ID: <20250131210520.85874-37-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250131210520.85874-1-philmd@linaro.org> References: <20250131210520.85874-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=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 From: Peter Maydell Now that sd_enable() has been removed, SD::enable is set to true in sd_instance_init() and then never changed. So we can remove it. Note that the VMSTATE_UNUSED() size argument should be '1', not 'sizeof(bool)', as noted in the CAUTION comment in vmstate.h. Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Message-ID: <20250128104519.3981448-12-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daudé --- hw/sd/sd.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 74bb7f39bbf..e541c57f8c3 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -173,7 +173,6 @@ struct SDState { size_t data_size; uint8_t data[512]; QEMUTimer *ocr_power_timer; - bool enable; uint8_t dat_lines; bool cmd_line; }; @@ -292,12 +291,12 @@ static const char *sd_acmd_name(SDState *sd, uint8_t cmd) static uint8_t sd_get_dat_lines(SDState *sd) { - return sd->enable ? sd->dat_lines : 0; + return sd->dat_lines; } static bool sd_get_cmd_line(SDState *sd) { - return sd->enable ? sd->cmd_line : false; + return sd->cmd_line; } static void sd_set_voltage(SDState *sd, uint16_t millivolts) @@ -976,7 +975,7 @@ static const VMStateDescription sd_vmstate = { VMSTATE_UINT32(data_offset, SDState), VMSTATE_UINT8_ARRAY(data, SDState, 512), VMSTATE_UNUSED_V(1, 512), - VMSTATE_BOOL(enable, SDState), + VMSTATE_UNUSED(1), VMSTATE_END_OF_LIST() }, .subsections = (const VMStateDescription * const []) { @@ -2146,7 +2145,7 @@ static int sd_do_command(SDState *sd, SDRequest *req, sd_rsp_type_t rtype; int rsplen; - if (!sd->blk || !blk_is_inserted(sd->blk) || !sd->enable) { + if (!sd->blk || !blk_is_inserted(sd->blk)) { return 0; } @@ -2297,8 +2296,9 @@ static void sd_write_byte(SDState *sd, uint8_t value) { int i; - if (!sd->blk || !blk_is_inserted(sd->blk) || !sd->enable) + if (!sd->blk || !blk_is_inserted(sd->blk)) { return; + } if (sd->state != sd_receivingdata_state) { qemu_log_mask(LOG_GUEST_ERROR, @@ -2429,8 +2429,9 @@ static uint8_t sd_read_byte(SDState *sd) uint8_t ret; uint32_t io_len; - if (!sd->blk || !blk_is_inserted(sd->blk) || !sd->enable) + if (!sd->blk || !blk_is_inserted(sd->blk)) { return dummy_byte; + } if (sd->state != sd_sendingdata_state) { qemu_log_mask(LOG_GUEST_ERROR, @@ -2664,7 +2665,6 @@ static void sd_instance_init(Object *obj) sd->proto = sc->proto; sd->last_cmd_name = "UNSET"; - sd->enable = true; sd->ocr_power_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, sd_ocr_powerup, sd); }