From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) client-ip=209.85.128.42; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f42.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1609707030; cv=none; d=zohomail.com; s=zohoarc; b=l5OqxLmwDigD3HWrJByAEMcKSWx4nNfGLMnMm+y57A1xWoM4ubB+3LrPCYctWKFYre8FyDFeVRWigx2UpksZKNij/A5AE/dgeexBaK37zQHsNwMn2/Xd8+BE9sl9e/rtTWQWnxi35jxgz6hRyz+PAB++SxnhrO2ryujV9SrK//M= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707030; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=gAe+ySOPN0ziiB9Rsr0qc0IoOAIOTLWZuAmtV89p3uU=; b=mVECZJ+gMgvFPKII7FhZqvlqJ17iFxS8+KPOgbZ/YbqlGUHfYqrI0zvgH5e9KRJLg2glr5Au3R6zLUGo3kSdv3La8WHZD9eJvTZgqhguZPRKHCmbZMP3zk0cWbaEWRmvJd3NgekqJ15GuSud+MKON0fs5kjupeo5I8CBjPr673U= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) by mx.zohomail.com with SMTPS id 1609707030730924.6325756854367; Sun, 3 Jan 2021 12:50:30 -0800 (PST) Received: by mail-wm1-f42.google.com with SMTP id v14so15930740wml.1 for ; Sun, 03 Jan 2021 12:50:30 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id s25sm96778933wrs.49.2021.01.03.12.50.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:50:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=gAe+ySOPN0ziiB9Rsr0qc0IoOAIOTLWZuAmtV89p3uU=; b=U2DhFvJ66OYBTjFqTNoB8wHvw32hZo/1wIWRzOmSWUaC8xI7vyo1K852LrTO7ZRl67 hBnmjGjiDLxkYefwdGlYITf0NAK9UfHVaPG+LeuND4Au9t3D+vst0/bNHVzWHvtqFE7j acci5BFRc0ommVIzqVRVkbUNUJJOrDbL+W3mMu7/c7lFCMuKXuMoOkEJNJ5qWOKpEifY 0QUWJIqyLcBhMXrtAT2A9FU+DnvhfqmfjSWaQNTPfCq534LHp38AI0CfNnFkoEL/cPWB P/6KGht7mjyyk0s+ZI2Ay3apG25wEud9Kk6z2Uw4tS18GPQvP1QdKA5dTMayQ6r2cmRU 0xQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=gAe+ySOPN0ziiB9Rsr0qc0IoOAIOTLWZuAmtV89p3uU=; b=rQBxHrAOhTc6VwFCZIqZJdvXLLTrigHssl81Emt92POgRf1ZFPFP2i4MdV2+mIt7Qp xet1HfxNEjPr4PCDhLts0wsw4zxOvb5rE9lpJgc7OyD05PEvzF+pJmp30iwT32gsvSi/ G2klHPrOhI/6HaZ5LPmRFiRtDMb3O8ewsvserX3BDMhCMLNOcuNKu3DsjaHaajtJbxFP fsQMLOo0h4CjsfuvuTiWHO9YO7ThYTw95h8X0+3LH7d/L/StnbNvlIVytICrfaVGxNdt Z2Br59to5fc0kzZ4fwml2Fav5N4L4F2zx7DAjA1NYpD0y/GTAw/Zp0+iQLQFjqIGyqJp dBjQ== X-Gm-Message-State: AOAM53225RmUsMBGxadVl1Qw02SNfkmnOEcUedlfjlN1VPzW83Gg5q7a vQnOqDAX+uaHYTLl2oKkc6AYG8nOFdA= X-Google-Smtp-Source: ABdhPJzOMyRRIqVILF2QacHFbgrWNhP3hxGAxT7fqhT+y35VyqrzHaGfn5lOOtxWIyj84fivdCnMyA== X-Received: by 2002:a05:600c:211:: with SMTP id 17mr24154915wmi.84.1609707029019; Sun, 03 Jan 2021 12:50:29 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , David Gibson Subject: [PULL 01/35] hw/pci-host: Use the PCI_BUILD_BDF() macro from 'hw/pci/pci.h' Date: Sun, 3 Jan 2021 21:49:47 +0100 Message-Id: <20210103205021.2837760-2-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) We already have a generic PCI_BUILD_BDF() macro in "hw/pci/pci.h" to pack these values, use it. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: David Gibson Message-Id: <20201012124506.3406909-3-philmd@redhat.com> --- hw/pci-host/bonito.c | 3 +-- hw/pci-host/pnv_phb4.c | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/hw/pci-host/bonito.c b/hw/pci-host/bonito.c index a99eced0657..b05295639a6 100644 --- a/hw/pci-host/bonito.c +++ b/hw/pci-host/bonito.c @@ -196,8 +196,7 @@ FIELD(BONGENCFG, PCIQUEUE, 12, 1) #define PCI_IDSEL_VIA686B (1 << PCI_IDSEL_VIA686B_BIT) =20 #define PCI_ADDR(busno , devno , funno , regno) \ - ((((busno) << 16) & 0xff0000) + (((devno) << 11) & 0xf800) + \ - (((funno) << 8) & 0x700) + (regno)) + ((PCI_BUILD_BDF(busno, PCI_DEVFN(devno , funno)) << 8) + (regno)) =20 typedef struct BonitoState BonitoState; =20 diff --git a/hw/pci-host/pnv_phb4.c b/hw/pci-host/pnv_phb4.c index 03daf40a237..6328e985f81 100644 --- a/hw/pci-host/pnv_phb4.c +++ b/hw/pci-host/pnv_phb4.c @@ -889,7 +889,7 @@ static bool pnv_phb4_resolve_pe(PnvPhb4DMASpace *ds) /* Read RTE */ bus_num =3D pci_bus_num(ds->bus); addr =3D rtt & PHB_RTT_BASE_ADDRESS_MASK; - addr +=3D 2 * ((bus_num << 8) | ds->devfn); + addr +=3D 2 * PCI_BUILD_BDF(bus_num, ds->devfn); if (dma_memory_read(&address_space_memory, addr, &rte, sizeof(rte))) { phb_error(ds->phb, "Failed to read RTT entry at 0x%"PRIx64, addr); /* Set error bits ? fence ? ... */ --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.46 as permitted sender) client-ip=209.85.128.46; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f46.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.46 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707035; cv=none; d=zohomail.com; s=zohoarc; b=kpYMUma9RIrdbavJU4qWYkGjOLxdf0+AxILznqorKdHZpzsFw3eyZUOIKuUaJiVvCMyfJ4T31vQ3IVCrMJ8NYwCfO5x0UhtzJOx8hKHXZPLZwSLS0oQR6K2UQvbrgXmWyUJ5Rgro9GMJgxInM0hBAgglDQrOfTPh7Hfyl9OMmtM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707035; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=FI0wjjU7ydWM6Tw/dQ+710uQoMT5xzqHZJT1DeBID0A=; b=EgCGvnJZeIZsvOSKCs786yMv+0CEtFb0mcMcldOS0uqTzmFqiFAVfHZy1zsw6fqBLtj9JcLHUnqcI1GaXILLlI6MlgXAhSvG97Tg3KASt7zW/baeQVoGrZlbeJtGjwZP8XKu/1m8f7ED9G2ScIxfItlXZ/MXODevNOYHAAy/djY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.46 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) by mx.zohomail.com with SMTPS id 1609707035704268.4188701610934; Sun, 3 Jan 2021 12:50:35 -0800 (PST) Received: by mail-wm1-f46.google.com with SMTP id q75so16659856wme.2 for ; Sun, 03 Jan 2021 12:50:35 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id s12sm29011792wmh.29.2021.01.03.12.50.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:50:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=FI0wjjU7ydWM6Tw/dQ+710uQoMT5xzqHZJT1DeBID0A=; b=olA1933n73p5oltNXmG5C0nNtJuhG2Xf72WqiwrGGYSpUjfmxqqjOXhsHh6NgPpSO1 Ao97KDc2pJrV0EEI+cJ0qsukDz+C2xPb9JN4Mnwu+Q3A6/rWujP0S3hgSgn0n0MRQzWJ qMde4brrz/WukXx8HO/IdfItke7PHh6bc7dl9exVj/0vGBOaQBEEgkgFGdgnBvX9yiBP R+UsbhstdpXOCV+b2PAPjYZw3Bi9DOybCmZighbvW2Nsvk/OXHsPs/h3Ig3lwWWT5+YW i0o2t8T4BZuJcr2uQbkmctOV7HjaxFIcfVVeDkb37TsllxvhdshsHlZ5SAtyUQGznUNg pYCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=FI0wjjU7ydWM6Tw/dQ+710uQoMT5xzqHZJT1DeBID0A=; b=IubY2QFf/LhnAZeBdRrl47LS09uE7tv3rDAf2TGBVUBV08ba6hVVoi2m8UV+JOs9X4 Ii2U8K1CuAv1bgbE8AvCkasKXV+efkyPY4b7v+98LlTGYdVYgY8aN2O2x3djg0/fJfte g9ZYymEtQ1RSYK6C+zXiA8DJjnvMlydI2UX8MpCPXiaS5rRXpMCKn5AYJm+wm7pWfBfR +6R45wBbmRx5w8wQFJGwQkBRpMi/U9Xhl922vgdnpIzReDkPIXAWRvUNxrhl0VFhs9Mb r4ICxF1GIze/C6/OOavzmYTqzgAcSBwq5Z90eDyeflV/ESSpgWDmgrA8gd1/l68T/6ja Z/hw== X-Gm-Message-State: AOAM5317cOZxMPVWp4HA2RAIE/rXAyrOpbzAvrVQZAP6P3QxMMwSfiud NZN5B79Aanojq+G1MceJF3c= X-Google-Smtp-Source: ABdhPJy6QwfPsDeSz8vG6LOJLQ2/uWRfC75uRmK73T2NkVkZiIaIscK4eEPynLDHgaN6yoXR/bnJbA== X-Received: by 2002:a7b:c842:: with SMTP id c2mr24046309wml.100.1609707033988; Sun, 03 Jan 2021 12:50:33 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , David Gibson Subject: [PULL 02/35] hw/pci-host/uninorth: Use the PCI_FUNC() macro from 'hw/pci/pci.h' Date: Sun, 3 Jan 2021 21:49:48 +0100 Message-Id: <20210103205021.2837760-3-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) We already have a generic PCI_FUNC() macro in "hw/pci/pci.h" to extract the PCI function identifier, use it. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: David Gibson Message-Id: <20201012124506.3406909-4-philmd@redhat.com> --- hw/pci-host/uninorth.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/pci-host/uninorth.c b/hw/pci-host/uninorth.c index 0c0a9ecee14..f0a4d8c7178 100644 --- a/hw/pci-host/uninorth.c +++ b/hw/pci-host/uninorth.c @@ -63,7 +63,7 @@ static uint32_t unin_get_config_reg(uint32_t reg, uint32_= t addr) if (slot =3D=3D 32) { slot =3D -1; /* XXX: should this be 0? */ } - func =3D (reg >> 8) & 7; + func =3D PCI_FUNC(reg >> 8); =20 /* ... and then convert them to x86 format */ /* config pointer */ --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) client-ip=209.85.128.48; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f48.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707040; cv=none; d=zohomail.com; s=zohoarc; b=f1Z9RKnCvpMoLqs4iS9/CWI1RWuJESpn3fluCvyfJSsx1IeYH1YQj+9LvesEfI3IHy+8XTl8PFdy7nHHM+E5KS04rlWLw+PnZ9PJ68qVE6+JqbF3B0ZOd9P4DlwpFVGi3GIxpE+0w/D1/RjYtzTsNSyvEm1OUB3FabmtKt1/6BU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707040; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=C4EjkfX/EFxfnrsxvvCHO1MOBBNeBx+9lsiUXY0oxBY=; b=Pdr95da2OHXA8Lga9y+ozeYXfQFcGYWtpCQcEYn7lA6IcUGJk48Z2HDn4S17/MKKWHHvsB1/shTAyxt+hagFoJf6CLhsre4sjhGm5z0jdGoM8/aGugJlgObgaVbvaNIRfdi73GOk4lOaD6yyfXBwgdgFLPwTVn1V/j2KOi6L+6o= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) by mx.zohomail.com with SMTPS id 1609707040721137.59553229825144; Sun, 3 Jan 2021 12:50:40 -0800 (PST) Received: by mail-wm1-f48.google.com with SMTP id a6so15937530wmc.2 for ; Sun, 03 Jan 2021 12:50:40 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id o74sm34756208wme.36.2021.01.03.12.50.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:50:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=C4EjkfX/EFxfnrsxvvCHO1MOBBNeBx+9lsiUXY0oxBY=; b=M9ielLvxhirQLv/Y+w5NRoGlA6GkIftoHkwjhM9lnm/Qbd2uG7nBBvZ8Z4NZzmY+NK EBsiMH2CwudKA58g9b7Fdc5BWnn5qNZHYK58qsPzjfq3XeabHIQ08SoA+Tr5d11N7zSZ +M6VfT8hCi84wF7wYlmNPJoguY2GZ/s3MT0Ed7F9AIW9HCnX20b18cimfyCP2O5b7r9v erYdBLhaGejPd4rh/soc+zOTdvn9N5a7CFMbvrmhQmbsXhjeb9wiuwnIJZwHA4Z3Lfff b3uequalRsiZ6D6z/phw9kh/+FI+w0r4dWI4kAKJfpfv/nWvQnd0LmRQYGk1uSPhynWl EYTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=C4EjkfX/EFxfnrsxvvCHO1MOBBNeBx+9lsiUXY0oxBY=; b=EnPse05H75X87nTk6D6jcyaspiNM59H9bEH7ccH5+Apx9ED6eSJzujhbka0PSTpkah 0r8RvTvN24CgHZPW9vMfjQqRyprRN9UkMRrd04j3wIvbhnftABYUOIiMMTcZC6kGbA3E rNpWVpkvTGUlJ7J7JnUIauvlj3V5O0jK0A6Sq3/SaebD2RIXdYVcEdg5x286wEDWbdbg gndG5ZoZm6HrAkdiRUPxzmJZT4yaU3Ch/a1nBY29dtSryZELbNDcN4KFOO1cD1tvq1dd qONfDv9YM9IWmetEquVQw+x5DIt3cK2rMVMM6GoBeNV4kla76eo1ZW3n3T+JiruWLt43 JyRA== X-Gm-Message-State: AOAM533ON0QvZWM/cqfM0r87gzkHkK0SN1d5ap25PUOqemzwB0GR+2Zh 9mi07XpAQGs8cHpY8AoSLsJYKmzkKkw= X-Google-Smtp-Source: ABdhPJyxNdP6016x9Nm1dEXqiSpyXJpsbPhedFqdJ5qhWY57Udekz+W9Y6dnSunuedHDG4stxxyBWQ== X-Received: by 2002:a1c:6654:: with SMTP id a81mr23525748wmc.113.1609707038899; Sun, 03 Jan 2021 12:50:38 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paul Durrant , David Gibson Subject: [PULL 03/35] hw: Use the PCI_SLOT() macro from 'hw/pci/pci.h' Date: Sun, 3 Jan 2021 21:49:49 +0100 Message-Id: <20210103205021.2837760-4-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) We already have a generic PCI_SLOT() macro in "hw/pci/pci.h" to extract the PCI slot identifier, use it. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Paul Durrant Acked-by: David Gibson Message-Id: <20201012124506.3406909-5-philmd@redhat.com> --- hw/hppa/dino.c | 2 +- hw/i386/xen/xen-hvm.c | 2 +- hw/isa/piix3.c | 2 +- hw/mips/gt64xxx_pci.c | 2 +- hw/pci-host/bonito.c | 2 +- hw/pci-host/ppce500.c | 2 +- hw/ppc/ppc4xx_pci.c | 2 +- hw/sh4/sh_pci.c | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/hw/hppa/dino.c b/hw/hppa/dino.c index 81053b5fb64..5b82c9440d1 100644 --- a/hw/hppa/dino.c +++ b/hw/hppa/dino.c @@ -496,7 +496,7 @@ static void dino_set_irq(void *opaque, int irq, int lev= el) =20 static int dino_pci_map_irq(PCIDevice *d, int irq_num) { - int slot =3D d->devfn >> 3; + int slot =3D PCI_SLOT(d->devfn); =20 assert(irq_num >=3D 0 && irq_num <=3D 3); =20 diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c index 096c46fef15..68821d90f52 100644 --- a/hw/i386/xen/xen-hvm.c +++ b/hw/i386/xen/xen-hvm.c @@ -140,7 +140,7 @@ typedef struct XenIOState { =20 int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num) { - return irq_num + ((pci_dev->devfn >> 3) << 2); + return irq_num + (PCI_SLOT(pci_dev->devfn) << 2); } =20 void xen_piix3_set_irq(void *opaque, int irq_num, int level) diff --git a/hw/isa/piix3.c b/hw/isa/piix3.c index 587850b8881..f46ccae25cf 100644 --- a/hw/isa/piix3.c +++ b/hw/isa/piix3.c @@ -361,7 +361,7 @@ type_init(piix3_register_types) static int pci_slot_get_pirq(PCIDevice *pci_dev, int pci_intx) { int slot_addend; - slot_addend =3D (pci_dev->devfn >> 3) - 1; + slot_addend =3D PCI_SLOT(pci_dev->devfn) - 1; return (pci_intx + slot_addend) & 3; } =20 diff --git a/hw/mips/gt64xxx_pci.c b/hw/mips/gt64xxx_pci.c index e091bc4ed55..588e6f99301 100644 --- a/hw/mips/gt64xxx_pci.c +++ b/hw/mips/gt64xxx_pci.c @@ -982,7 +982,7 @@ static int gt64120_pci_map_irq(PCIDevice *pci_dev, int = irq_num) { int slot; =20 - slot =3D (pci_dev->devfn >> 3); + slot =3D PCI_SLOT(pci_dev->devfn); =20 switch (slot) { /* PIIX4 USB */ diff --git a/hw/pci-host/bonito.c b/hw/pci-host/bonito.c index b05295639a6..ee8b193e15b 100644 --- a/hw/pci-host/bonito.c +++ b/hw/pci-host/bonito.c @@ -570,7 +570,7 @@ static int pci_bonito_map_irq(PCIDevice *pci_dev, int i= rq_num) { int slot; =20 - slot =3D (pci_dev->devfn >> 3); + slot =3D PCI_SLOT(pci_dev->devfn); =20 switch (slot) { case 5: /* FULOONG2E_VIA_SLOT, SouthBridge, IDE, USB, ACPI, AC97, MC= 97 */ diff --git a/hw/pci-host/ppce500.c b/hw/pci-host/ppce500.c index 9517aab913e..5ad1424b31a 100644 --- a/hw/pci-host/ppce500.c +++ b/hw/pci-host/ppce500.c @@ -342,7 +342,7 @@ static const MemoryRegionOps e500_pci_reg_ops =3D { =20 static int mpc85xx_pci_map_irq(PCIDevice *pci_dev, int pin) { - int devno =3D pci_dev->devfn >> 3; + int devno =3D PCI_SLOT(pci_dev->devfn); int ret; =20 ret =3D ppce500_pci_map_irq_slot(devno, pin); diff --git a/hw/ppc/ppc4xx_pci.c b/hw/ppc/ppc4xx_pci.c index 28724c06f88..e8789f64e80 100644 --- a/hw/ppc/ppc4xx_pci.c +++ b/hw/ppc/ppc4xx_pci.c @@ -243,7 +243,7 @@ static void ppc4xx_pci_reset(void *opaque) * may need further refactoring for other boards. */ static int ppc4xx_pci_map_irq(PCIDevice *pci_dev, int irq_num) { - int slot =3D pci_dev->devfn >> 3; + int slot =3D PCI_SLOT(pci_dev->devfn); =20 trace_ppc4xx_pci_map_irq(pci_dev->devfn, irq_num, slot); =20 diff --git a/hw/sh4/sh_pci.c b/hw/sh4/sh_pci.c index 73d2d0bccb0..734892f47c7 100644 --- a/hw/sh4/sh_pci.c +++ b/hw/sh4/sh_pci.c @@ -109,7 +109,7 @@ static const MemoryRegionOps sh_pci_reg_ops =3D { =20 static int sh_pci_map_irq(PCIDevice *d, int irq_num) { - return (d->devfn >> 3); + return PCI_SLOT(d->devfn); } =20 static void sh_pci_set_irq(void *opaque, int irq_num, int level) --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.52 as permitted sender) client-ip=209.85.128.52; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f52.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707045; cv=none; d=zohomail.com; s=zohoarc; b=EcdIbpxbs1VrAhoNtIc94ma0e6YVRXOdZtYhLvwL/NB0t4fLgnOO6IZr5bzUtbOKwy8YFYr1xprjZbg8PR6n6C75suK1pYH2XmHLM+rIVYd1QcOS8HfDdRGFrwLn2TNr2P0bW4wCdWimfx+lgA/tQafLO+nQkkZIa/p+EO2Wc1s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707045; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=mJEfvgkW151yoqlrnwbVD77R8FV2DDiUd+HFwtJzojs=; b=k8VgEDBksZOQNTtE+MnKdLKCtztj/TEl6KQaQ9nKgIdZFm8pj6KDGr4nesyJuGbySy8fS9JDMoL/aamvWypBbSczWTNBRI9/it+9tNjWfqIe9drO6/uzQ6a8yHItjpZuDFDl69UpdwNeU7rbbfUX7zRMQ/YB1V4r49XAHRktWRE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) by mx.zohomail.com with SMTPS id 1609707045765627.5831579459692; Sun, 3 Jan 2021 12:50:45 -0800 (PST) Received: by mail-wm1-f52.google.com with SMTP id 3so16633875wmg.4 for ; Sun, 03 Jan 2021 12:50:45 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id r16sm90250921wrx.36.2021.01.03.12.50.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:50:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=mJEfvgkW151yoqlrnwbVD77R8FV2DDiUd+HFwtJzojs=; b=WdcEoG0oxwcSelex4dvFqaBNFEa3nZFK2uNicwzSmSG4hh3qge+IZnjIkyA3Pu3uZv GNPyvVgGwABkb/jrMZuH3x0t85yAHy09SQTK+Lb839AiPQ8G+cLtk2A50PchKDsqZydD oCdiOgrLd4rHrkh3Xsgn2xx0JZjnVRFJKzpXcM1tJO9PiAgyxto7Zgx7AEDhYbTWRbgY pJUQLI/d8UDDoVyvSqmU4ss0+tCrh9VDC2A6imGIYAB+6HpOPHwAYmL9vmtUtHqhoJ8C h0sSry+Aw8z8NArZDogVuMLi6InLcwzH861p9jbv3w64lGaCcTnwFpDGZhBDoCkojYdt 2WBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=mJEfvgkW151yoqlrnwbVD77R8FV2DDiUd+HFwtJzojs=; b=S5VO9sGxYp78a291FxeenvOWBC3uTvTe1rc8C8Tnj743vECj7NCyly6KeVFDCmAejU yu3Y9iC46IDSS9T91khVgCsQRLL9ABE3CztT0J5xc6ePg+0zCCEBDxEhu7Ri/UdHF75c gy3utlZ/I4fmZh5bxNA95YFGO9v45SJR69b+L24+sFtyMSBHavf4fCYR04zm3BvtQvp8 dWPnGL1wm32Ec7uTXiGP4B9MJUTGCoGzvXeWWCF7J3MOR/fnuBrxflxh3AYsx6qILlSg mz8si4lXaQkS1PpPHProrYsG5Xj71Fx4wNuwzIGXtZgQpWOSEJ0NAOwp/WoCzst5V1d1 TM8w== X-Gm-Message-State: AOAM5314haLZM681LqfDdyXFkaGmsc/c2eEeAshzStb+CYXlpVlGMk2y zSiY/z6J4xZh+qyvZpwqkBg= X-Google-Smtp-Source: ABdhPJwpovTfdV8FixNNVUx3evK5bqs3G/HloZtnyt3odGRgwzeiv5NrcKpRHI94a1vbk6YGsvHVzg== X-Received: by 2002:a1c:3987:: with SMTP id g129mr23731953wma.86.1609707044035; Sun, 03 Jan 2021 12:50:44 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , David Gibson Subject: [PULL 04/35] hw: Use the PCI_DEVFN() macro from 'hw/pci/pci.h' Date: Sun, 3 Jan 2021 21:49:50 +0100 Message-Id: <20210103205021.2837760-5-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) We already have a generic PCI_DEVFN() macro in "hw/pci/pci.h" to pack the PCI slot/function identifiers, use it. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: David Gibson Message-Id: <20201012124506.3406909-6-philmd@redhat.com> Reviewed-by: Huacai Chen Message-Id: <20201231224911.1467352-4-f4bug@amsat.org> --- hw/arm/virt.c | 3 ++- hw/pci-host/bonito.c | 2 +- hw/pci-host/uninorth.c | 6 ++---- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/hw/arm/virt.c b/hw/arm/virt.c index 96985917d3b..bf3a7171118 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -1147,7 +1147,8 @@ static void create_pcie_irq_map(const VirtMachineStat= e *vms, full_irq_map, sizeof(full_irq_map)); =20 qemu_fdt_setprop_cells(vms->fdt, nodename, "interrupt-map-mask", - 0x1800, 0, 0, /* devfn (PCI_SLOT(3)) */ + cpu_to_be16(PCI_DEVFN(3, 0)), /* Slot 3 */ + 0, 0, 0x7 /* PCI irq */); } =20 diff --git a/hw/pci-host/bonito.c b/hw/pci-host/bonito.c index ee8b193e15b..40dda237d8e 100644 --- a/hw/pci-host/bonito.c +++ b/hw/pci-host/bonito.c @@ -631,7 +631,7 @@ static void bonito_pcihost_realize(DeviceState *dev, Er= ror **errp) phb->bus =3D pci_register_root_bus(dev, "pci", pci_bonito_set_irq, pci_bonito_map_ir= q, dev, &bs->pci_mem, get_system_io(), - 0x28, 32, TYPE_PCI_BUS); + PCI_DEVFN(5, 0), 32, TYPE_PCI_BUS); =20 for (size_t i =3D 0; i < 3; i++) { char *name =3D g_strdup_printf("pci.lomem%zu", i); diff --git a/hw/pci-host/uninorth.c b/hw/pci-host/uninorth.c index f0a4d8c7178..d25b62d6a5b 100644 --- a/hw/pci-host/uninorth.c +++ b/hw/pci-host/uninorth.c @@ -68,10 +68,8 @@ static uint32_t unin_get_config_reg(uint32_t reg, uint32= _t addr) /* ... and then convert them to x86 format */ /* config pointer */ retval =3D (reg & (0xff - 7)) | (addr & 7); - /* slot */ - retval |=3D slot << 11; - /* fn */ - retval |=3D func << 8; + /* slot, fn */ + retval |=3D PCI_DEVFN(slot, func) << 8; } =20 trace_unin_get_config_reg(reg, addr, retval); --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) client-ip=209.85.128.48; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f48.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707050; cv=none; d=zohomail.com; s=zohoarc; b=d+WGWYzedtpONjW/B7PucOV1A7kGgSokdPNU6Ys2J6SCQXylWi9smnsRmYB1Yq2wrdX69YCJvFNpIUeOJbLXXXzA8I7L+GecwUYW53oi3zbP6dIu14LmYbxGAWhQ9N0h6ZNSySIwiOg0iJ0CUIFBAeEozWwCWb7rlSpgBL/KLjg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707050; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=YzGWtZ4+YCQhnZaXQ8F+2J3H/K/1NpSbG3GLe6EBQno=; b=jmraijxglKxhXYsap5LfWoaK5fJbeJ9y9DBhyouahLDwDQAakDFa/LJWExTgHzvYAUlm3Egss+ZwMuuYtFBWINvBe9trFzs0ybaGrMeuR8vKJiOqlu68U6fCyNbTTsEfdbdhlepNiz/Fc2kDPylPqi3eVQFDwRziYvXLIjKRtb0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) by mx.zohomail.com with SMTPS id 16097070503891000.5463295135598; Sun, 3 Jan 2021 12:50:50 -0800 (PST) Received: by mail-wm1-f48.google.com with SMTP id k10so15962584wmi.3 for ; Sun, 03 Jan 2021 12:50:49 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id h9sm32135331wme.11.2021.01.03.12.50.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:50:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=YzGWtZ4+YCQhnZaXQ8F+2J3H/K/1NpSbG3GLe6EBQno=; b=aumHAXvdNyFmKt/KoAL1UyCLRE6J8ALTXsM8n7SHRGprrgvpCh4bKIQj8xAGsBcNLF 3j8PxJYz97UYfrinxsC38+R/vkxOe9HfplxxHf0p17yjLRqAUveRIK+90JsFr+AZfS+c rKO1suswd9N2ojy7QbDKy13QXekdKJoUxE2cGc7Puw436F92EpIDERoA25aAncftm2Gz SI0HWGfz5QkFYGggURp3UZPobqh8rsYOiVp2AcKu/1uBphRmIU70ktbeVe43aLQ0yysk s7MnvqiZYeixfNYViaHF59wu3UGVYZsjQf6nAJDMNBCIG9kXzqbIXPn5AjpfBgQYloFn doxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=YzGWtZ4+YCQhnZaXQ8F+2J3H/K/1NpSbG3GLe6EBQno=; b=Sb6rrPTEUhITF9O4UQajgWUZkihdlWlFwgLFv6y6nnBWB12NJ1MUsl0UMuK4ClamdN zyM8tx3PZcdg6CXXHaDsrNsjy9eSOFgysw1V5rBHTNXL7la9BHbr03jY7KI/BEat+8pw Uy5viJaUxBTMAKtd2RuNGdP9hvPz74QYj62/Fz8AWmUQXmGy+oenLE789XZWOBKDCoeB IbWxs9H3zrpbKBG/qMrmGqhMuRhtCQnBHPYM21kLq2IzyOa/qAGLIshwL4yGiZfZzu8p BY7O2rZjZrMch5+QQbqxxbv066T3XGIw/LXXk9u828/HHkLjJ9fj6gU9hPSN0lwp3d/O tWfQ== X-Gm-Message-State: AOAM530O6LHUjwjZS6ZdHWwGCskG5CHyvI3ekuDju5BGIvOKC1HgpKN5 +xFW6RWL8riCOabpm7c8/Yg= X-Google-Smtp-Source: ABdhPJzr2ea6c5x3JBmPhq61/h/wrZfIwsiiIyaaNmVrCbpv4asURwace2a0GYhT276J+IgGFfnnwQ== X-Received: by 2002:a1c:4384:: with SMTP id q126mr24591101wma.84.1609707048707; Sun, 03 Jan 2021 12:50:48 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 05/35] hw/pci-host/bonito: Display hexadecimal value with '0x' prefix Date: Sun, 3 Jan 2021 21:49:51 +0100 Message-Id: <20210103205021.2837760-6-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Huacai Chen Message-Id: <20201231224911.1467352-3-f4bug@amsat.org> --- hw/pci-host/bonito.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/pci-host/bonito.c b/hw/pci-host/bonito.c index 40dda237d8e..c2f71e5a132 100644 --- a/hw/pci-host/bonito.c +++ b/hw/pci-host/bonito.c @@ -468,8 +468,8 @@ static uint32_t bonito_sbridge_pciaddr(void *opaque, hw= addr addr) regno =3D (cfgaddr & BONITO_PCICONF_REG_MASK) >> BONITO_PCICONF_REG_OF= FSET; =20 if (idsel =3D=3D 0) { - error_report("error in bonito pci config address " TARGET_FMT_plx - ",pcimap_cfg=3D%x", addr, s->regs[BONITO_PCIMAP_CFG]); + error_report("error in bonito pci config address 0x" TARGET_FMT_plx + ",pcimap_cfg=3D0x%x", addr, s->regs[BONITO_PCIMAP_CFG= ]); exit(1); } pciaddr =3D PCI_ADDR(pci_bus_num(phb->bus), devno, funno, regno); --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) client-ip=209.85.128.48; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f48.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1609707055; cv=none; d=zohomail.com; s=zohoarc; b=QQaSw8Uz+sPxS82nZVUNG3VExtcvv3Q7to+mU+fpWX2prgvLr6tWy2WmY8yOr/+oxeuK+/G1QH+ElSFo6ipH4wjAsjr1M90y6b81cpy+3bOQUN9YuHDxtkfF8PeTGgp83pPB2Ui26lC01WTHbyIoY6szEasmJAslDyKnnUXE1ns= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707055; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Mtm6xGks3wIDWzm8K1daiyeu/mqK77Oxsfa8BCzbgxA=; b=c5SO8VDJpC9EiqWr68CBZKAE2HT+C0my9dIc3WetGqgVtS9Xi1zKZ1tmNHqZdYBjOb08yHZTUk1QBCdSkisRzlQJS6vZLwB4DMw9nCQPbJN1ZgvQGw4fIHKR1GDcayzpX/b2Dovp1+74eS+oP9LI/leQx+iDqbc4Vdp9fCrDPvI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) by mx.zohomail.com with SMTPS id 1609707055528209.85887438490192; Sun, 3 Jan 2021 12:50:55 -0800 (PST) Received: by mail-wm1-f48.google.com with SMTP id v14so15933030wml.1 for ; Sun, 03 Jan 2021 12:50:54 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id r1sm90031579wrl.95.2021.01.03.12.50.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:50:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Mtm6xGks3wIDWzm8K1daiyeu/mqK77Oxsfa8BCzbgxA=; b=iXPRz+sbgWhjjcWF59Fe0++PLdYchOLdyVW2AhUZFjAOd7C6lHL3GC4qjlX789L+aq 5umNWyYujTSOkahM9H6AVfyXZWakaZ0JIR0njZ8peVIRzupvvQjLBMtvH60g21Jte2Hy aftJCwN+wg/Clz3I1F6EnQ6SBhTlq/PQgNNCp638FmaxNgKc5EOOjNjFCwFJ8WRX6/vU fIWEgpJ8ggdPApiXiuLDmL9ClnxLrHCHpTQeobGR5F3xr2Wb2aCVGD8T4OWVXakx4DVg a6dzTGMXpshEpLae/kp4xeEKgDZlCSCSiK/7Wy/EPZTTuYBxXi/ORKwIBqC6YqwdxRXZ 95Vw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=Mtm6xGks3wIDWzm8K1daiyeu/mqK77Oxsfa8BCzbgxA=; b=JipefwBevYZtWOFxVfOWU67R1OaSif0F6bHNxW3+IDQJ3UEn+RochcGLmAI5r0oEkD Hx0BLwFXJLmYBffYlRVp4DTszK9j5yjXZyre3pJSiBJ4AR80/0Z8mJEMvZ/LmSCc5up2 MFu0qThW/hkdLbwLOCikAdtqyVahC6THNAkOIHCoOsagZYagEC+hTHGR5DmqY773EPje lAV4LY0KBOWHhHAKozBcFNp1CT82ZzedeP9bKF9skOfLdyR9YdDYNlnWXcR64VZKqrlJ +eRxj3CwX0th3hOv8NO59rB8mMDNhECldq4udOCLssZylAyzQZ3/vOEiQAgJahQyOXWp EH2g== X-Gm-Message-State: AOAM531gWWA33+WvPKPMugKANR8678oqSg8S9SgTuBcRxk71/WlQC8Pl mrBSdFmOeQ5zw4XK2C4qkoI= X-Google-Smtp-Source: ABdhPJz1NHryXW3zPKbi3hKvziZ9ZtbHNq1p7EjrCmjfLVq2LT10kebncRcNFKOzTpcbMHAZNweaBQ== X-Received: by 2002:a1c:7dd8:: with SMTP id y207mr24668215wmc.181.1609707053367; Sun, 03 Jan 2021 12:50:53 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 06/35] hw/pci-host/bonito: Use pci_config_set_interrupt_pin() Date: Sun, 3 Jan 2021 21:49:52 +0100 Message-Id: <20210103205021.2837760-7-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Replace pci_set_byte(PCI_INTERRUPT_PIN) by pci_config_set_interrupt_pin(). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Huacai Chen Message-Id: <20201231224911.1467352-5-f4bug@amsat.org> --- hw/pci-host/bonito.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/pci-host/bonito.c b/hw/pci-host/bonito.c index c2f71e5a132..2a2db7cea69 100644 --- a/hw/pci-host/bonito.c +++ b/hw/pci-host/bonito.c @@ -728,7 +728,8 @@ static void bonito_realize(PCIDevice *dev, Error **errp) pci_set_word(dev->config + PCI_SUBSYSTEM_ID, 0x0000); =20 pci_set_byte(dev->config + PCI_INTERRUPT_LINE, 0x00); - pci_set_byte(dev->config + PCI_INTERRUPT_PIN, 0x01); + pci_config_set_interrupt_pin(dev->config, 0x01); /* interrupt pin A */ + pci_set_byte(dev->config + PCI_MIN_GNT, 0x3c); pci_set_byte(dev->config + PCI_MAX_LAT, 0x00); =20 --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) client-ip=209.85.221.42; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f42.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707060; cv=none; d=zohomail.com; s=zohoarc; b=aOmGXMaHOPed1Knm1M//ng8b67qoQEzZAXp7V3N5OUN2kFbqFtu7W6kOA1BUaHVmLaKTu6ITlU/67c13JOSS2WhKPAUjZmSVNb0hKjQ5dyNEk3Rp2yzf+HKS+hnPexLZHybnSppDaA4FDDezo38TRpLQUVOCWAU8MR66MhqH2LE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707060; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=TmDPD6MXF8mA8RyDbydGI6yo0ymCSoqGu3VOAJS5hfo=; b=U0qlMkYDOW7balsJtkxUGmlSEQj5oUCauoryXBGSZv/Z+r9qc7RY4OvSHMB5av0spXih5LfoA2L6qHwpcaHV63XVmK1RjJrcZVDvVvOVX/R8oE2ueYYsp3KOYnXFodug/0gTInlKR9rieKnrOaIcthCsO8TLjqXZV36Yd7+1nDM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f42.google.com (mail-wr1-f42.google.com [209.85.221.42]) by mx.zohomail.com with SMTPS id 1609707060034333.5677598800594; Sun, 3 Jan 2021 12:51:00 -0800 (PST) Received: by mail-wr1-f42.google.com with SMTP id 91so29443742wrj.7 for ; Sun, 03 Jan 2021 12:50:59 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id j59sm92191927wrj.13.2021.01.03.12.50.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:50:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=TmDPD6MXF8mA8RyDbydGI6yo0ymCSoqGu3VOAJS5hfo=; b=RUTfFvuFD8YJ36Hplbfhraa7GQSatpiTwfG9c3uowWZl+QAdZm8GtKaCwyDd7NjsML 0BGQaYYT69maB44kmDRUd6qv259h6Sro0jIHFRpEVHDtSZnAe6HtxivPKH9yrW3RFGDW ksinoN5/cL9SqGh+g/khE4T2kPKxjLzdWgA//fRGEepCgo1Ix9czmrMrdKGjDdIWj0Vf GvdzsmT9a7q4F67f1rGSZo4FY4EL9hbCd2zH6MSMJ+F9hY3qjJAfm6hyDjPIrEWRTZwQ kM50k2McG7RfDdgoLU0/ZFxPiF2gCBN3jU3lGRmbMPg+Ic9mj9pw5gxVYjgP82p1nTds pLpw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=TmDPD6MXF8mA8RyDbydGI6yo0ymCSoqGu3VOAJS5hfo=; b=RTfl6N2phH8HRfJwPoaqb4xcd7AWQsfsPISJe+ivZxYaLmjktz3ZiUvZwBrxRf8ss9 YwNokwoMjDZ/ebRPV9NCKWZ3CEauAQhqNzih/JcgOH+dLEm6H2d2ESodYFH6ZliGKDQ7 zAuLEC4F1x4YiceX57iNzs9Eg/AbIfce8dSSdTkSvs8gSm1rQBc1UBlzHbWKXiKVdvtm 09JYlqF47p0rjtlvMPgX6FCkTZgCYIfY4okn5zuRqApFooUPFzNvvTwIgRwO50oxKZc6 BqSZXkf/yN7+pcbe2Iu0iPX8IqBKXBgJ/3ya1m46L/4YOpY2I8Z9+THDb5jF7wN3nM12 4doA== X-Gm-Message-State: AOAM531dn3hsxLz6xrg2MVVVQJfMVtNVxlrEf0riV+r592B7m2ehDAJJ NcNvIe0K5zQqCKvNFmZoi6U= X-Google-Smtp-Source: ABdhPJzw7J7eXKUnwN4xK1xSJXXn0j9xhRKnpQwmJZLvErFjuCIC7zRGRx9KbCWxfn3cZt8o+l4BgQ== X-Received: by 2002:a5d:6106:: with SMTP id v6mr75780344wrt.173.1609707058232; Sun, 03 Jan 2021 12:50:58 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 07/35] vt82c686: Rename AC97/MC97 parts from VT82C686B to VIA Date: Sun, 3 Jan 2021 21:49:53 +0100 Message-Id: <20210103205021.2837760-8-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan These parts are common between VT82C686B and VT8231 so can be shared in the future. Rename them to VIA prefix accordingly. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <510ddb17836a2c2e68a27cf2dcaee420bc2efbc1.1609584215.git.balato= n@eik.bme.hu> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/isa/vt82c686.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index b3170c70c3d..2a0f85dea94 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -168,22 +168,22 @@ struct VT686PMState { uint32_t smb_io_base; }; =20 -struct VT686AC97State { +struct VIAAC97State { PCIDevice dev; }; =20 -struct VT686MC97State { +struct VIAMC97State { PCIDevice dev; }; =20 #define TYPE_VT82C686B_PM_DEVICE "VT82C686B_PM" OBJECT_DECLARE_SIMPLE_TYPE(VT686PMState, VT82C686B_PM_DEVICE) =20 -#define TYPE_VT82C686B_MC97_DEVICE "VT82C686B_MC97" -OBJECT_DECLARE_SIMPLE_TYPE(VT686MC97State, VT82C686B_MC97_DEVICE) +#define TYPE_VIA_MC97_DEVICE "VIA_MC97" +OBJECT_DECLARE_SIMPLE_TYPE(VIAMC97State, VIA_MC97_DEVICE) =20 -#define TYPE_VT82C686B_AC97_DEVICE "VT82C686B_AC97" -OBJECT_DECLARE_SIMPLE_TYPE(VT686AC97State, VT82C686B_AC97_DEVICE) +#define TYPE_VIA_AC97_DEVICE "VIA_AC97" +OBJECT_DECLARE_SIMPLE_TYPE(VIAAC97State, VIA_AC97_DEVICE) =20 static void pm_update_sci(VT686PMState *s) { @@ -260,7 +260,7 @@ static const VMStateDescription vmstate_acpi =3D { =20 static void vt82c686b_ac97_realize(PCIDevice *dev, Error **errp) { - VT686AC97State *s =3D VT82C686B_AC97_DEVICE(dev); + VIAAC97State *s =3D VIA_AC97_DEVICE(dev); uint8_t *pci_conf =3D s->dev.config; =20 pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_INVALIDATE | @@ -274,7 +274,7 @@ void vt82c686b_ac97_init(PCIBus *bus, int devfn) { PCIDevice *dev; =20 - dev =3D pci_new(devfn, TYPE_VT82C686B_AC97_DEVICE); + dev =3D pci_new(devfn, TYPE_VIA_AC97_DEVICE); pci_realize_and_unref(dev, bus, &error_fatal); } =20 @@ -293,9 +293,9 @@ static void via_ac97_class_init(ObjectClass *klass, voi= d *data) } =20 static const TypeInfo via_ac97_info =3D { - .name =3D TYPE_VT82C686B_AC97_DEVICE, + .name =3D TYPE_VIA_AC97_DEVICE, .parent =3D TYPE_PCI_DEVICE, - .instance_size =3D sizeof(VT686AC97State), + .instance_size =3D sizeof(VIAAC97State), .class_init =3D via_ac97_class_init, .interfaces =3D (InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, @@ -305,7 +305,7 @@ static const TypeInfo via_ac97_info =3D { =20 static void vt82c686b_mc97_realize(PCIDevice *dev, Error **errp) { - VT686MC97State *s =3D VT82C686B_MC97_DEVICE(dev); + VIAMC97State *s =3D VIA_MC97_DEVICE(dev); uint8_t *pci_conf =3D s->dev.config; =20 pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_INVALIDATE | @@ -318,7 +318,7 @@ void vt82c686b_mc97_init(PCIBus *bus, int devfn) { PCIDevice *dev; =20 - dev =3D pci_new(devfn, TYPE_VT82C686B_MC97_DEVICE); + dev =3D pci_new(devfn, TYPE_VIA_MC97_DEVICE); pci_realize_and_unref(dev, bus, &error_fatal); } =20 @@ -337,9 +337,9 @@ static void via_mc97_class_init(ObjectClass *klass, voi= d *data) } =20 static const TypeInfo via_mc97_info =3D { - .name =3D TYPE_VT82C686B_MC97_DEVICE, + .name =3D TYPE_VIA_MC97_DEVICE, .parent =3D TYPE_PCI_DEVICE, - .instance_size =3D sizeof(VT686MC97State), + .instance_size =3D sizeof(VIAMC97State), .class_init =3D via_mc97_class_init, .interfaces =3D (InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.43 as permitted sender) client-ip=209.85.221.43; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f43.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.43 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707064; cv=none; d=zohomail.com; s=zohoarc; b=RJX7HB1Gon/tqpPVswZvXNdBsDuMADZvrxUvFsuUXuTbhB3+F+Oqj/ksfx8/4cvVXfeGwSXI/7XJyStM10p1xPH1OkkaeHF44aiPDd9Au6AfWcPgWI+k2JQ0/rYafM3Fj20Y0Af8Miw+w/u3KLRl+GMTQZzxy7B/+N5TwBssn+I= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707064; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=I0Qx7xrqmoPP3gg4/cVniQfedaijI77x9Nh3r7Ky0Is=; b=Ur7Erid96zwYgpks/hYlmm8Nv0RcHupgMu9mJyduBSNfGyrqUREsWj5EalmeTZsYJcm2NAKdpzEuN92X9hv8UPeMRt8EihCTh+y3hS/232q+4B5Sfgw/Th+6eF4gPV5Hk+NaINe6mV23wXG54tSBkOlAfXi/xoCfgqAs2TJieC0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.43 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) by mx.zohomail.com with SMTPS id 1609707064736439.30048060706736; Sun, 3 Jan 2021 12:51:04 -0800 (PST) Received: by mail-wr1-f43.google.com with SMTP id r7so29447277wrc.5 for ; Sun, 03 Jan 2021 12:51:04 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id v1sm29170946wmj.31.2021.01.03.12.51.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=I0Qx7xrqmoPP3gg4/cVniQfedaijI77x9Nh3r7Ky0Is=; b=nh2N+BbjJntilJGIP8zA6Dvb4T+WeDH0ayurtFeCnwPm0iR+iuXTQ14iswTND3pDWv 3rDM/OK6IPOsD8sYqltf+jaZI0Y7ywHVzNM4GzrnjnUUbemnHQsV/dySlZ0RnGRRNTnV FY2ZrokhzIXesBM9NY3FOSir2b0hcxcQaFCI5ZY8qjBHCrcOnOLqPOM7emym6d+IPqRl dvTKhAcW47ZQZE+sWBe/BrWb1Vwd+JttcOt2NTTFvSp/kWGSYMgZ4tIUSXCLlWuTEZk0 IloNFfyGhWZWcZ0kIc/30yYZ+VQrk4zPbR4jDwQ98aV7ZxBAiFyGc3H2GXUrYF1ML6Of l7nQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=I0Qx7xrqmoPP3gg4/cVniQfedaijI77x9Nh3r7Ky0Is=; b=JxczKrmmxDaOtnbxIs7zAPM3ne7wjBS2VLTDog/8vN6+K96Q8IU+zs/u5kUlt4bsvT luUC9YXJBD0w8gyP5gtZXs9HMVbFFMA/t+60aebfm1PJIYnrQUpqa3AlrOfeSEKE4sfr hTDmNUbTBnbZY4g9/a1Ki/u0CNwBpL5hAdyunrWwMfHefkqR2ayiFIzHACCkg8keqI7z 6s6V1r+MW6F7/b9ieIJs6rCMcxt0V/IKvEW61EpVY9TTx+xQQ/H6IZ8couIDHqJA+PLO vQyROsjsX/6UXJDae5JdjuiMFn1XjuUOxNu1K34IJTEk3cAU/w283AuaHozUNSFFBhsE uZcg== X-Gm-Message-State: AOAM533lHB9mvtFFMzvKOlYZgYGGuR5QphwS+V78earqmSXDJ4iW/EN7 krTiLoWQhLFlpHmm73r3tac= X-Google-Smtp-Source: ABdhPJxFUMGc0yzl1B3G/E1E+/27Jyi8yLpGJ2asiXdd6Fk7GQPYQS+NsCohsvNFl+chWuICxbsAhA== X-Received: by 2002:a5d:55c6:: with SMTP id i6mr76433027wrw.137.1609707062935; Sun, 03 Jan 2021 12:51:02 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 08/35] vt82c686: Remove unnecessary _DEVICE suffix from type macros Date: Sun, 3 Jan 2021 21:49:54 +0100 Message-Id: <20210103205021.2837760-9-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan There's no reason to suffix everything with _DEVICE when the names are already unique without it and shorter names are more readable. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/isa/vt82c686.c | 48 +++++++++++++++++++++++------------------------ 1 file changed, 23 insertions(+), 25 deletions(-) diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index 2a0f85dea94..1be1169f83a 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -49,8 +49,8 @@ struct VT82C686BState { SuperIOConfig superio_conf; }; =20 -#define TYPE_VT82C686B_DEVICE "VT82C686B" -OBJECT_DECLARE_SIMPLE_TYPE(VT82C686BState, VT82C686B_DEVICE) +#define TYPE_VT82C686B "VT82C686B" +OBJECT_DECLARE_SIMPLE_TYPE(VT82C686BState, VT82C686B) =20 static void superio_ioport_writeb(void *opaque, hwaddr addr, uint64_t data, unsigned size) @@ -117,7 +117,7 @@ static const MemoryRegionOps superio_ops =3D { =20 static void vt82c686b_isa_reset(DeviceState *dev) { - VT82C686BState *vt82c =3D VT82C686B_DEVICE(dev); + VT82C686BState *vt82c =3D VT82C686B(dev); uint8_t *pci_conf =3D vt82c->dev.config; =20 pci_set_long(pci_conf + PCI_CAPABILITY_LIST, 0x000000c0); @@ -146,7 +146,7 @@ static void vt82c686b_isa_reset(DeviceState *dev) static void vt82c686b_write_config(PCIDevice *d, uint32_t address, uint32_t val, int len) { - VT82C686BState *vt686 =3D VT82C686B_DEVICE(d); + VT82C686BState *vt686 =3D VT82C686B(d); =20 DPRINTF("vt82c686b_write_config address 0x%x val 0x%x len 0x%x\n", address, val, len); @@ -176,14 +176,14 @@ struct VIAMC97State { PCIDevice dev; }; =20 -#define TYPE_VT82C686B_PM_DEVICE "VT82C686B_PM" -OBJECT_DECLARE_SIMPLE_TYPE(VT686PMState, VT82C686B_PM_DEVICE) +#define TYPE_VT82C686B_PM "VT82C686B_PM" +OBJECT_DECLARE_SIMPLE_TYPE(VT686PMState, VT82C686B_PM) =20 -#define TYPE_VIA_MC97_DEVICE "VIA_MC97" -OBJECT_DECLARE_SIMPLE_TYPE(VIAMC97State, VIA_MC97_DEVICE) +#define TYPE_VIA_MC97 "VIA_MC97" +OBJECT_DECLARE_SIMPLE_TYPE(VIAMC97State, VIA_MC97) =20 -#define TYPE_VIA_AC97_DEVICE "VIA_AC97" -OBJECT_DECLARE_SIMPLE_TYPE(VIAAC97State, VIA_AC97_DEVICE) +#define TYPE_VIA_AC97 "VIA_AC97" +OBJECT_DECLARE_SIMPLE_TYPE(VIAAC97State, VIA_AC97) =20 static void pm_update_sci(VT686PMState *s) { @@ -260,7 +260,7 @@ static const VMStateDescription vmstate_acpi =3D { =20 static void vt82c686b_ac97_realize(PCIDevice *dev, Error **errp) { - VIAAC97State *s =3D VIA_AC97_DEVICE(dev); + VIAAC97State *s =3D VIA_AC97(dev); uint8_t *pci_conf =3D s->dev.config; =20 pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_INVALIDATE | @@ -274,7 +274,7 @@ void vt82c686b_ac97_init(PCIBus *bus, int devfn) { PCIDevice *dev; =20 - dev =3D pci_new(devfn, TYPE_VIA_AC97_DEVICE); + dev =3D pci_new(devfn, TYPE_VIA_AC97); pci_realize_and_unref(dev, bus, &error_fatal); } =20 @@ -293,7 +293,7 @@ static void via_ac97_class_init(ObjectClass *klass, voi= d *data) } =20 static const TypeInfo via_ac97_info =3D { - .name =3D TYPE_VIA_AC97_DEVICE, + .name =3D TYPE_VIA_AC97, .parent =3D TYPE_PCI_DEVICE, .instance_size =3D sizeof(VIAAC97State), .class_init =3D via_ac97_class_init, @@ -305,7 +305,7 @@ static const TypeInfo via_ac97_info =3D { =20 static void vt82c686b_mc97_realize(PCIDevice *dev, Error **errp) { - VIAMC97State *s =3D VIA_MC97_DEVICE(dev); + VIAMC97State *s =3D VIA_MC97(dev); uint8_t *pci_conf =3D s->dev.config; =20 pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_INVALIDATE | @@ -318,7 +318,7 @@ void vt82c686b_mc97_init(PCIBus *bus, int devfn) { PCIDevice *dev; =20 - dev =3D pci_new(devfn, TYPE_VIA_MC97_DEVICE); + dev =3D pci_new(devfn, TYPE_VIA_MC97); pci_realize_and_unref(dev, bus, &error_fatal); } =20 @@ -337,7 +337,7 @@ static void via_mc97_class_init(ObjectClass *klass, voi= d *data) } =20 static const TypeInfo via_mc97_info =3D { - .name =3D TYPE_VIA_MC97_DEVICE, + .name =3D TYPE_VIA_MC97, .parent =3D TYPE_PCI_DEVICE, .instance_size =3D sizeof(VIAMC97State), .class_init =3D via_mc97_class_init, @@ -350,7 +350,7 @@ static const TypeInfo via_mc97_info =3D { /* vt82c686 pm init */ static void vt82c686b_pm_realize(PCIDevice *dev, Error **errp) { - VT686PMState *s =3D VT82C686B_PM_DEVICE(dev); + VT686PMState *s =3D VT82C686B_PM(dev); uint8_t *pci_conf; =20 pci_conf =3D s->dev.config; @@ -386,10 +386,10 @@ I2CBus *vt82c686b_pm_init(PCIBus *bus, int devfn, uin= t32_t smb_io_base, PCIDevice *dev; VT686PMState *s; =20 - dev =3D pci_new(devfn, TYPE_VT82C686B_PM_DEVICE); + dev =3D pci_new(devfn, TYPE_VT82C686B_PM); qdev_prop_set_uint32(&dev->qdev, "smb_io_base", smb_io_base); =20 - s =3D VT82C686B_PM_DEVICE(dev); + s =3D VT82C686B_PM(dev); =20 pci_realize_and_unref(dev, bus, &error_fatal); =20 @@ -419,7 +419,7 @@ static void via_pm_class_init(ObjectClass *klass, void = *data) } =20 static const TypeInfo via_pm_info =3D { - .name =3D TYPE_VT82C686B_PM_DEVICE, + .name =3D TYPE_VT82C686B_PM, .parent =3D TYPE_PCI_DEVICE, .instance_size =3D sizeof(VT686PMState), .class_init =3D via_pm_class_init, @@ -442,7 +442,7 @@ static const VMStateDescription vmstate_via =3D { /* init the PCI-to-ISA bridge */ static void vt82c686b_realize(PCIDevice *d, Error **errp) { - VT82C686BState *vt82c =3D VT82C686B_DEVICE(d); + VT82C686BState *vt82c =3D VT82C686B(d); uint8_t *pci_conf; ISABus *isa_bus; uint8_t *wmask; @@ -479,9 +479,7 @@ ISABus *vt82c686b_isa_init(PCIBus *bus, int devfn) { PCIDevice *d; =20 - d =3D pci_create_simple_multifunction(bus, devfn, true, - TYPE_VT82C686B_DEVICE); - + d =3D pci_create_simple_multifunction(bus, devfn, true, TYPE_VT82C686B= ); return ISA_BUS(qdev_get_child_bus(DEVICE(d), "isa.0")); } =20 @@ -507,7 +505,7 @@ static void via_class_init(ObjectClass *klass, void *da= ta) } =20 static const TypeInfo via_info =3D { - .name =3D TYPE_VT82C686B_DEVICE, + .name =3D TYPE_VT82C686B, .parent =3D TYPE_PCI_DEVICE, .instance_size =3D sizeof(VT82C686BState), .class_init =3D via_class_init, --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.43 as permitted sender) client-ip=209.85.128.43; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f43.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.43 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707069; cv=none; d=zohomail.com; s=zohoarc; b=cwrKIwPXKe27yO81/TIffhRBasfRF/dS6UOjo/uY8Tkuz9vQIPuEB4vQ/llxROsGIsI1hmkZcwLXxnV6chZ6AyFdBQS/wZqdkd1srPxD7QsZgVtL9oKqI1s6ncl7yRPnZsuzwGF9BYesio0oB1InIhOy/JJEcnwiLnb6S0LXOy0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707069; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=5g7GkiOKARu3D5h6eCdOE8BcvARihXVaPU6R8h4tuJw=; b=Pl4oR2VUEwZvQAGBaydZoROuDXC3/s5mRpCTA+wVS5AA5YW0j2aTflHLB5TVs2KVIDHdU9i+AkcazszS2eCAzDJagonMKRlWMmMnXGWraF0C/Uy3+fj+Fk4Hv0kKPCY6deJEabrZCe3az2C5OjmJjms426ruvfcmcfBsKjKaGyE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.43 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) by mx.zohomail.com with SMTPS id 1609707069438295.2564457687711; Sun, 3 Jan 2021 12:51:09 -0800 (PST) Received: by mail-wm1-f43.google.com with SMTP id c133so15940282wme.4 for ; Sun, 03 Jan 2021 12:51:08 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id i16sm83595108wrx.89.2021.01.03.12.51.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=5g7GkiOKARu3D5h6eCdOE8BcvARihXVaPU6R8h4tuJw=; b=vfyTkT2yQUs/d1NSyDVupvQkFdgTwxYYvA8tp5G+gDekxBl1koDe8QTfOFfUG/jfKu 5q4DafXdV1nPCciuEde4Ve8FPZYidUlMlQ0RvQgTYEFZtDIEKJFGUy9QBkeSUHoL5fhS if85ZdA7/tfdwqsE3k8DxgN4dKZdTQQELdHer7FYHh5F29fFfbcqA/sSDRJtS9goqPKr BkeOk605qfRvjb1JuOfGYGsRr8qLSeYoLAZrn23lOn0UJ1yyW+2K+Xg4ENi08/myRp/V 8Yth5K68ShgW2IueMM30YzhlN0op+k0pK/y8n6j3ir/z/JCXn5SNnj13pcjeSQjEf/3S 8s4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=5g7GkiOKARu3D5h6eCdOE8BcvARihXVaPU6R8h4tuJw=; b=mkuT4xZ+mhx42j+g9vRJyEde+WJq+H2/ByGjI5vDA9Dh/TX8jG32uIXlpAauGed4T2 oSU359UQhyWEjmBLcORaz42hDaGxkMS/BuKkcQHAPqBwdyT4K2WOSUPQ2WCOLBOgVKOM oP0N9x7WjBC9WtmyFwyF4feIHQZIXkoFreFwiLoBZu3ehZe3ZJovkwhGcQJLYkBk4dtx UoGjnckiGIkIA08+Ur+6DgEZ0pPrDrx0idfzJKKL2gdfxxT8hDUNq5dWOEwfn6LnrPEn fsWEWCDvjetZBX/BgvPKZwFtagBsXBYJB4GdiZhySswgytJm9L0WkR/dppRaP3ZeMjKE 8iGQ== X-Gm-Message-State: AOAM533KDyA6/Mywj46MLvwNxNo3DPbbGBEuKbY1f4LV6Oz7IM1qgPO+ axFJqYd5QrpDEso+zqtPsqE= X-Google-Smtp-Source: ABdhPJwvul11hlBm4oe5zg4/zPiAQAs4HR+6cU9/d3J6tWzv4ZsWWlMBlPnGB+szm7GUjVS61KB1Tw== X-Received: by 2002:a1c:e0d4:: with SMTP id x203mr24716466wmg.68.1609707067663; Sun, 03 Jan 2021 12:51:07 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 09/35] vt82c686: Rename VT82C686B to VT82C686B_ISA Date: Sun, 3 Jan 2021 21:49:55 +0100 Message-Id: <20210103205021.2837760-10-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan This is really the ISA bridge part so name the type accordingly. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <78db2ced4b41a8a775dbc6c97a90db683952c2cb.1609584216.git.balato= n@eik.bme.hu> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/isa/vt82c686.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index 1be1169f83a..d40599c7daa 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -43,14 +43,14 @@ typedef struct SuperIOConfig { uint8_t data; } SuperIOConfig; =20 -struct VT82C686BState { +struct VT82C686BISAState { PCIDevice dev; MemoryRegion superio; SuperIOConfig superio_conf; }; =20 -#define TYPE_VT82C686B "VT82C686B" -OBJECT_DECLARE_SIMPLE_TYPE(VT82C686BState, VT82C686B) +#define TYPE_VT82C686B_ISA "vt82c686b-isa" +OBJECT_DECLARE_SIMPLE_TYPE(VT82C686BISAState, VT82C686B_ISA) =20 static void superio_ioport_writeb(void *opaque, hwaddr addr, uint64_t data, unsigned size) @@ -117,7 +117,7 @@ static const MemoryRegionOps superio_ops =3D { =20 static void vt82c686b_isa_reset(DeviceState *dev) { - VT82C686BState *vt82c =3D VT82C686B(dev); + VT82C686BISAState *vt82c =3D VT82C686B_ISA(dev); uint8_t *pci_conf =3D vt82c->dev.config; =20 pci_set_long(pci_conf + PCI_CAPABILITY_LIST, 0x000000c0); @@ -146,7 +146,7 @@ static void vt82c686b_isa_reset(DeviceState *dev) static void vt82c686b_write_config(PCIDevice *d, uint32_t address, uint32_t val, int len) { - VT82C686BState *vt686 =3D VT82C686B(d); + VT82C686BISAState *vt686 =3D VT82C686B_ISA(d); =20 DPRINTF("vt82c686b_write_config address 0x%x val 0x%x len 0x%x\n", address, val, len); @@ -434,7 +434,7 @@ static const VMStateDescription vmstate_via =3D { .version_id =3D 1, .minimum_version_id =3D 1, .fields =3D (VMStateField[]) { - VMSTATE_PCI_DEVICE(dev, VT82C686BState), + VMSTATE_PCI_DEVICE(dev, VT82C686BISAState), VMSTATE_END_OF_LIST() } }; @@ -442,7 +442,7 @@ static const VMStateDescription vmstate_via =3D { /* init the PCI-to-ISA bridge */ static void vt82c686b_realize(PCIDevice *d, Error **errp) { - VT82C686BState *vt82c =3D VT82C686B(d); + VT82C686BISAState *vt82c =3D VT82C686B_ISA(d); uint8_t *pci_conf; ISABus *isa_bus; uint8_t *wmask; @@ -479,7 +479,7 @@ ISABus *vt82c686b_isa_init(PCIBus *bus, int devfn) { PCIDevice *d; =20 - d =3D pci_create_simple_multifunction(bus, devfn, true, TYPE_VT82C686B= ); + d =3D pci_create_simple_multifunction(bus, devfn, true, TYPE_VT82C686B= _ISA); return ISA_BUS(qdev_get_child_bus(DEVICE(d), "isa.0")); } =20 @@ -505,9 +505,9 @@ static void via_class_init(ObjectClass *klass, void *da= ta) } =20 static const TypeInfo via_info =3D { - .name =3D TYPE_VT82C686B, + .name =3D TYPE_VT82C686B_ISA, .parent =3D TYPE_PCI_DEVICE, - .instance_size =3D sizeof(VT82C686BState), + .instance_size =3D sizeof(VT82C686BISAState), .class_init =3D via_class_init, .interfaces =3D (InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.53 as permitted sender) client-ip=209.85.128.53; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f53.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.53 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707074; cv=none; d=zohomail.com; s=zohoarc; b=B5HG0y0/CIjeG49z60frNF/+zQJDcCvy5RgTk/ASM2VKTNkfDhN5ThbFJwpbQbsckL9QFm329EvL+htMe2LU9oiOa22FRYVoU1CXVuYFdsiE4TczJ3WhN1/mkVZUSoiaD7W1f+OA0cmcmPgi6VwpWm3400nzyeCxdr9vAPfo4aM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707074; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=nOzZTcac2kllEQZs0BxsVCpPfK/RYn4dnLOEe0pRhUU=; b=b9T+Z/QLHP3siJVuzgCv4yobhmfN0+qJ+0BGCUMCqwYKmcSIksHcljweQUG9ke1pJT9U7oymEC9af8I49Rpa2Ckr+SaFqbQWX3qVqkIXYgeqWBv1WwzJNcBMKZkvKpC+ezfynD3IX1tAU5GjJkmZQiZySoXqgjllrf+tV5353vY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.53 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) by mx.zohomail.com with SMTPS id 1609707074169995.7536951536315; Sun, 3 Jan 2021 12:51:14 -0800 (PST) Received: by mail-wm1-f53.google.com with SMTP id a6so15940796wmc.2 for ; Sun, 03 Jan 2021 12:51:13 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id b13sm84101630wrt.31.2021.01.03.12.51.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=nOzZTcac2kllEQZs0BxsVCpPfK/RYn4dnLOEe0pRhUU=; b=JdRLgVF9+4WGYfgUPblH9CF7aCD8k2deznbeYHdfqemdHTxcTVPjnQwo6UY8UUZClL ugtNlUtT99WZTJG7qpe0zUGp7l7fLk1vATcSmyngj5GEjaMsvQzNUwQ8F4hDx+ggW0v9 qGZED3/BRkiOPcJwpDOBPAlLbuo154mLCoEFuRloro6/f+jxNSZGllW3zwaJ1+ekZG56 mVawOB13qld7ctQR/eDDZgViyTHnGOSzsehnKvfTj3r4/tt1Xqx+x6K9qjo6Z+CSy19T 6T8jOUO7xX0JIW4uFO2mwWv+GEd83swTy4Oip19z6uUCN6AwfGakwqkOXiwv9fZwnnye gScQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=nOzZTcac2kllEQZs0BxsVCpPfK/RYn4dnLOEe0pRhUU=; b=KWtPfErjZvW8GYB7hSSLDCULEAtDJzngvZZ3SZGG/aF7VPIOexsw/dVwtjNp5OWc60 dO5frAVn+jMGAVz9tMcMWu8LG/6onFdG19OIUJmtZvmkZSPu7W32yu0LaFdlOZ619gSo Dx8MEkuepNXW4mCtjsbPNKDzGKrNO7kf0W66UjO7ZXXTkNxLW04AsKQ9oJuAqyGD10hB 1EoZi1eZ7JXz5PvI7wZEcNl4mHzk+9Qff0kpnpwbSPmWOiRB07USKsp8yyGXbGphPeTY qnfvZJCcJFbISvHfm5i7XhQrh+PutgsBJlJSaPMQ2BDIG2NIti0efvMtZx/CbcJtzVMD tbMg== X-Gm-Message-State: AOAM531kjgNy9zOdsgx6JMtEB1avoVMytdAjC6OoZScQEFE+e/lTAXlY P5WwUon2MrUQ/5xlmMCZWC8= X-Google-Smtp-Source: ABdhPJy9l+76skRYYb7/m/4rlZBMUTU2PYbqCFQFEOAuSLOQzr97MSD5fzCDNsIbapyN4LiWYvHh2A== X-Received: by 2002:a1c:1dd4:: with SMTP id d203mr24495300wmd.118.1609707072406; Sun, 03 Jan 2021 12:51:12 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 10/35] vt82c686: Remove vt82c686b_[am]c97_init() functions Date: Sun, 3 Jan 2021 21:49:56 +0100 Message-Id: <20210103205021.2837760-11-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan These are legacy init functions that are just equivalent to directly calling pci_create_simple so do that instead. Also rename objects to lower case via-ac97 and via-mc97 matching naming of other devices. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <1c4373c8aeb6c4fb2a8df2c864b0e91a977a3d7b.1609584216.git.balato= n@eik.bme.hu> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/isa/vt82c686.h | 4 ++-- hw/isa/vt82c686.c | 27 ++++----------------------- hw/mips/fuloong2e.c | 4 ++-- 3 files changed, 8 insertions(+), 27 deletions(-) diff --git a/include/hw/isa/vt82c686.h b/include/hw/isa/vt82c686.h index f23f45dfb1d..ff80a926dcb 100644 --- a/include/hw/isa/vt82c686.h +++ b/include/hw/isa/vt82c686.h @@ -3,11 +3,11 @@ =20 =20 #define TYPE_VT82C686B_SUPERIO "vt82c686b-superio" +#define TYPE_VIA_AC97 "via-ac97" +#define TYPE_VIA_MC97 "via-mc97" =20 /* vt82c686.c */ ISABus *vt82c686b_isa_init(PCIBus * bus, int devfn); -void vt82c686b_ac97_init(PCIBus *bus, int devfn); -void vt82c686b_mc97_init(PCIBus *bus, int devfn); I2CBus *vt82c686b_pm_init(PCIBus *bus, int devfn, uint32_t smb_io_base, qemu_irq sci_irq); =20 diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index d40599c7daa..8677a2d212b 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -179,12 +179,6 @@ struct VIAMC97State { #define TYPE_VT82C686B_PM "VT82C686B_PM" OBJECT_DECLARE_SIMPLE_TYPE(VT686PMState, VT82C686B_PM) =20 -#define TYPE_VIA_MC97 "VIA_MC97" -OBJECT_DECLARE_SIMPLE_TYPE(VIAMC97State, VIA_MC97) - -#define TYPE_VIA_AC97 "VIA_AC97" -OBJECT_DECLARE_SIMPLE_TYPE(VIAAC97State, VIA_AC97) - static void pm_update_sci(VT686PMState *s) { int sci_level, pmsts; @@ -254,10 +248,13 @@ static const VMStateDescription vmstate_acpi =3D { }; =20 /* - * TODO: vt82c686b_ac97_init() and vt82c686b_mc97_init() + * TODO: VIA_AC97 and VIA_MC97 * just register a PCI device now, functionalities will be implemented lat= er. */ =20 +OBJECT_DECLARE_SIMPLE_TYPE(VIAMC97State, VIA_MC97) +OBJECT_DECLARE_SIMPLE_TYPE(VIAAC97State, VIA_AC97) + static void vt82c686b_ac97_realize(PCIDevice *dev, Error **errp) { VIAAC97State *s =3D VIA_AC97(dev); @@ -270,14 +267,6 @@ static void vt82c686b_ac97_realize(PCIDevice *dev, Err= or **errp) pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03); } =20 -void vt82c686b_ac97_init(PCIBus *bus, int devfn) -{ - PCIDevice *dev; - - dev =3D pci_new(devfn, TYPE_VIA_AC97); - pci_realize_and_unref(dev, bus, &error_fatal); -} - static void via_ac97_class_init(ObjectClass *klass, void *data) { DeviceClass *dc =3D DEVICE_CLASS(klass); @@ -314,14 +303,6 @@ static void vt82c686b_mc97_realize(PCIDevice *dev, Err= or **errp) pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03); } =20 -void vt82c686b_mc97_init(PCIBus *bus, int devfn) -{ - PCIDevice *dev; - - dev =3D pci_new(devfn, TYPE_VIA_MC97); - pci_realize_and_unref(dev, bus, &error_fatal); -} - static void via_mc97_class_init(ObjectClass *klass, void *data) { DeviceClass *dc =3D DEVICE_CLASS(klass); diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index 45c596f4fe5..8287e65c52c 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -262,8 +262,8 @@ static void vt82c686b_southbridge_init(PCIBus *pci_bus,= int slot, qemu_irq intc, *i2c_bus =3D vt82c686b_pm_init(pci_bus, PCI_DEVFN(slot, 4), 0xeee1, NU= LL); =20 /* Audio support */ - vt82c686b_ac97_init(pci_bus, PCI_DEVFN(slot, 5)); - vt82c686b_mc97_init(pci_bus, PCI_DEVFN(slot, 6)); + pci_create_simple(pci_bus, PCI_DEVFN(slot, 5), TYPE_VIA_AC97); + pci_create_simple(pci_bus, PCI_DEVFN(slot, 6), TYPE_VIA_MC97); } =20 /* Network support */ --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) client-ip=209.85.221.49; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f49.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707078; cv=none; d=zohomail.com; s=zohoarc; b=FlZyiyn/9Jjwvgf5UIW4pza/MmneRcvzRiBHkU1e+NdKLs6/55DJyn6Zk382FgNFda68WvmYDksYSH/hMilp6yN6j54qm5hE6i4C/DoPPteLCCVANMZB+ryXorNchBDaKpcBYsEWX+JADJxtiqxyiuG45Yak7NcCwpquhZUv8/A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707078; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=xkAWBB0fCP8oR4s0bz1IL0feMKGP5FSRQjkwoaDMIDQ=; b=Jjdxz6EseGgN5pk6nL5lGJ47lX+VEeCV0L14TucAgXLY52d803dIC/i3wRoITClpVIOeefa89+nfLVvITfBDtvBpExBMumswxIQA57o6qeQIx11655cVzCJ/xgOZFL4tXweR0abYBVIYXmChCxFPA7EInOA1HTAnfhHY7wpdZtA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.49]) by mx.zohomail.com with SMTPS id 160970707888957.99354483600462; Sun, 3 Jan 2021 12:51:18 -0800 (PST) Received: by mail-wr1-f49.google.com with SMTP id d13so29437448wrc.13 for ; Sun, 03 Jan 2021 12:51:18 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id y11sm29615018wmi.0.2021.01.03.12.51.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=xkAWBB0fCP8oR4s0bz1IL0feMKGP5FSRQjkwoaDMIDQ=; b=ZTZXGFGaXkVU/ZHDY4aU/GSrpW18xclGnlYSWDNe98gr4dvj1rsRPiTwOpoxKN6m52 jNebBo9bVAZmUjzJIVJ+2T5aOPkNSaI5SAJEjtDXBdsRLrUj8P0dkd0QYhKG1YMdu/PB KCke/aj4+WAlG5aK8FzI0bWmZGHqtkwJ1mOGlkDo0qfiRYAQFG14+F0C/JQGCT73q2WO KdRYR25fjM/qU6PFCNXq/7eG+K9Jp3vVJfB35EA6x+R/3R/qEQ+FNSglhw7GiXOVPUol LL1SUbPOJ0LdOTX6jsV1nrOPZdhy0OS4LgQX7+rE4zeaMt042bmbZgcPcIVqW1VcCOx8 xMxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=xkAWBB0fCP8oR4s0bz1IL0feMKGP5FSRQjkwoaDMIDQ=; b=scjHKqdpa8D702ajpPYbGz3iiVnZ3NSQFkARc3Lnr3iMY+6UmEn+ZJSt/yjEi8R5rj lGqMUsGcDSWqdFlglZPwbLG0JD+PeGdA4CpHxcsn2ca+BV21eRVpbo6UIEAa9+ZW+Atz HX81ppcj8oBDYTIzcqy9lFj+3hdnIqA+15CJfR2CpL5XlhcHMzhHD06n3kl7e4bXQ0yl DY62r8428u9EZfIvCd+W2heA4fkJ+M0EVkBroLzu+rnX29mlfSXVHONdIaGPdS3zgZAk HVluwI0npONYlO/B8PUCeb/4iKsqnhb1ylG3enyrQIaMCsqIMRM6D8qDvxupsq2xUYWV XHYw== X-Gm-Message-State: AOAM5303vLI+UnuUd7ZsQJBYwG02dzCc2KwnbWCeJqzKuER6sfVxtXYT w4Nq3iIWjkCaei7kH7nJ3RI= X-Google-Smtp-Source: ABdhPJzo6LCf4mytO+6npZ1V9YQJxFr5mWMpGvgDdfl7aNkJgWsVRnvHKOC54TR37780TaHHcOOTFQ== X-Received: by 2002:adf:9506:: with SMTP id 6mr76437798wrs.172.1609707077100; Sun, 03 Jan 2021 12:51:17 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 11/35] vt82c686: Split off via-[am]c97 into separate file in hw/audio Date: Sun, 3 Jan 2021 21:49:57 +0100 Message-Id: <20210103205021.2837760-12-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan The via-[am]c97 code is supposed to implement the audio part of VIA south bridge chips so it is better placed under hw/audio/. Split it off into a separate file. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/audio/via-ac97.c | 106 +++++++++++++++++++++++++++++++++++++++++++ hw/isa/vt82c686.c | 91 ------------------------------------- hw/audio/meson.build | 1 + 3 files changed, 107 insertions(+), 91 deletions(-) create mode 100644 hw/audio/via-ac97.c diff --git a/hw/audio/via-ac97.c b/hw/audio/via-ac97.c new file mode 100644 index 00000000000..e617416ff76 --- /dev/null +++ b/hw/audio/via-ac97.c @@ -0,0 +1,106 @@ +/* + * VIA south bridges sound support + * + * This work is licensed under the GNU GPL license version 2 or later. + */ + +/* + * TODO: This is entirely boiler plate just registering empty PCI devices + * with the right ID guests expect, functionality should be added here. + */ + +#include "qemu/osdep.h" +#include "hw/isa/vt82c686.h" +#include "hw/pci/pci.h" + +struct VIAAC97State { + PCIDevice dev; +}; + +struct VIAMC97State { + PCIDevice dev; +}; + +OBJECT_DECLARE_SIMPLE_TYPE(VIAAC97State, VIA_AC97) +OBJECT_DECLARE_SIMPLE_TYPE(VIAMC97State, VIA_MC97) + +static void via_ac97_realize(PCIDevice *dev, Error **errp) +{ + VIAAC97State *s =3D VIA_AC97(dev); + uint8_t *pci_conf =3D s->dev.config; + + pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_INVALIDATE | + PCI_COMMAND_PARITY); + pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_CAP_LIST | + PCI_STATUS_DEVSEL_MEDIUM); + pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03); +} + +static void via_ac97_class_init(ObjectClass *klass, void *data) +{ + DeviceClass *dc =3D DEVICE_CLASS(klass); + PCIDeviceClass *k =3D PCI_DEVICE_CLASS(klass); + + k->realize =3D via_ac97_realize; + k->vendor_id =3D PCI_VENDOR_ID_VIA; + k->device_id =3D PCI_DEVICE_ID_VIA_AC97; + k->revision =3D 0x50; + k->class_id =3D PCI_CLASS_MULTIMEDIA_AUDIO; + set_bit(DEVICE_CATEGORY_SOUND, dc->categories); + dc->desc =3D "AC97"; +} + +static const TypeInfo via_ac97_info =3D { + .name =3D TYPE_VIA_AC97, + .parent =3D TYPE_PCI_DEVICE, + .instance_size =3D sizeof(VIAAC97State), + .class_init =3D via_ac97_class_init, + .interfaces =3D (InterfaceInfo[]) { + { INTERFACE_CONVENTIONAL_PCI_DEVICE }, + { }, + }, +}; + +static void via_mc97_realize(PCIDevice *dev, Error **errp) +{ + VIAMC97State *s =3D VIA_MC97(dev); + uint8_t *pci_conf =3D s->dev.config; + + pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_INVALIDATE | + PCI_COMMAND_VGA_PALETTE); + pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_DEVSEL_MEDIUM); + pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03); +} + +static void via_mc97_class_init(ObjectClass *klass, void *data) +{ + DeviceClass *dc =3D DEVICE_CLASS(klass); + PCIDeviceClass *k =3D PCI_DEVICE_CLASS(klass); + + k->realize =3D via_mc97_realize; + k->vendor_id =3D PCI_VENDOR_ID_VIA; + k->device_id =3D PCI_DEVICE_ID_VIA_MC97; + k->class_id =3D PCI_CLASS_COMMUNICATION_OTHER; + k->revision =3D 0x30; + set_bit(DEVICE_CATEGORY_NETWORK, dc->categories); + dc->desc =3D "MC97"; +} + +static const TypeInfo via_mc97_info =3D { + .name =3D TYPE_VIA_MC97, + .parent =3D TYPE_PCI_DEVICE, + .instance_size =3D sizeof(VIAMC97State), + .class_init =3D via_mc97_class_init, + .interfaces =3D (InterfaceInfo[]) { + { INTERFACE_CONVENTIONAL_PCI_DEVICE }, + { }, + }, +}; + +static void via_ac97_register_types(void) +{ + type_register_static(&via_ac97_info); + type_register_static(&via_mc97_info); +} + +type_init(via_ac97_register_types) diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index 8677a2d212b..9567326d8e2 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -168,14 +168,6 @@ struct VT686PMState { uint32_t smb_io_base; }; =20 -struct VIAAC97State { - PCIDevice dev; -}; - -struct VIAMC97State { - PCIDevice dev; -}; - #define TYPE_VT82C686B_PM "VT82C686B_PM" OBJECT_DECLARE_SIMPLE_TYPE(VT686PMState, VT82C686B_PM) =20 @@ -247,87 +239,6 @@ static const VMStateDescription vmstate_acpi =3D { } }; =20 -/* - * TODO: VIA_AC97 and VIA_MC97 - * just register a PCI device now, functionalities will be implemented lat= er. - */ - -OBJECT_DECLARE_SIMPLE_TYPE(VIAMC97State, VIA_MC97) -OBJECT_DECLARE_SIMPLE_TYPE(VIAAC97State, VIA_AC97) - -static void vt82c686b_ac97_realize(PCIDevice *dev, Error **errp) -{ - VIAAC97State *s =3D VIA_AC97(dev); - uint8_t *pci_conf =3D s->dev.config; - - pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_INVALIDATE | - PCI_COMMAND_PARITY); - pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_CAP_LIST | - PCI_STATUS_DEVSEL_MEDIUM); - pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03); -} - -static void via_ac97_class_init(ObjectClass *klass, void *data) -{ - DeviceClass *dc =3D DEVICE_CLASS(klass); - PCIDeviceClass *k =3D PCI_DEVICE_CLASS(klass); - - k->realize =3D vt82c686b_ac97_realize; - k->vendor_id =3D PCI_VENDOR_ID_VIA; - k->device_id =3D PCI_DEVICE_ID_VIA_AC97; - k->revision =3D 0x50; - k->class_id =3D PCI_CLASS_MULTIMEDIA_AUDIO; - set_bit(DEVICE_CATEGORY_SOUND, dc->categories); - dc->desc =3D "AC97"; -} - -static const TypeInfo via_ac97_info =3D { - .name =3D TYPE_VIA_AC97, - .parent =3D TYPE_PCI_DEVICE, - .instance_size =3D sizeof(VIAAC97State), - .class_init =3D via_ac97_class_init, - .interfaces =3D (InterfaceInfo[]) { - { INTERFACE_CONVENTIONAL_PCI_DEVICE }, - { }, - }, -}; - -static void vt82c686b_mc97_realize(PCIDevice *dev, Error **errp) -{ - VIAMC97State *s =3D VIA_MC97(dev); - uint8_t *pci_conf =3D s->dev.config; - - pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_INVALIDATE | - PCI_COMMAND_VGA_PALETTE); - pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_DEVSEL_MEDIUM); - pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03); -} - -static void via_mc97_class_init(ObjectClass *klass, void *data) -{ - DeviceClass *dc =3D DEVICE_CLASS(klass); - PCIDeviceClass *k =3D PCI_DEVICE_CLASS(klass); - - k->realize =3D vt82c686b_mc97_realize; - k->vendor_id =3D PCI_VENDOR_ID_VIA; - k->device_id =3D PCI_DEVICE_ID_VIA_MC97; - k->class_id =3D PCI_CLASS_COMMUNICATION_OTHER; - k->revision =3D 0x30; - set_bit(DEVICE_CATEGORY_NETWORK, dc->categories); - dc->desc =3D "MC97"; -} - -static const TypeInfo via_mc97_info =3D { - .name =3D TYPE_VIA_MC97, - .parent =3D TYPE_PCI_DEVICE, - .instance_size =3D sizeof(VIAMC97State), - .class_init =3D via_mc97_class_init, - .interfaces =3D (InterfaceInfo[]) { - { INTERFACE_CONVENTIONAL_PCI_DEVICE }, - { }, - }, -}; - /* vt82c686 pm init */ static void vt82c686b_pm_realize(PCIDevice *dev, Error **errp) { @@ -516,8 +427,6 @@ static const TypeInfo via_superio_info =3D { =20 static void vt82c686b_register_types(void) { - type_register_static(&via_ac97_info); - type_register_static(&via_mc97_info); type_register_static(&via_pm_info); type_register_static(&via_superio_info); type_register_static(&via_info); diff --git a/hw/audio/meson.build b/hw/audio/meson.build index 549e9a0396a..32c42bdebe4 100644 --- a/hw/audio/meson.build +++ b/hw/audio/meson.build @@ -11,4 +11,5 @@ softmmu_ss.add(when: 'CONFIG_PCSPK', if_true: files('pcspk.c')) softmmu_ss.add(when: 'CONFIG_PL041', if_true: files('pl041.c', 'lm4549.c')) softmmu_ss.add(when: 'CONFIG_SB16', if_true: files('sb16.c')) +softmmu_ss.add(when: 'CONFIG_VT82C686', if_true: files('via-ac97.c')) softmmu_ss.add(when: 'CONFIG_WM8750', if_true: files('wm8750.c')) --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.49 as permitted sender) client-ip=209.85.128.49; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f49.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707083; cv=none; d=zohomail.com; s=zohoarc; b=VFfbpm8Xp1KDYkBhaCPLmWloHxHeK2FlenNQROCDkFvXWE2SrSZT8Q0ZmCs6XIaimUFWZzsnDWrI95TKamJG8UfkrAWgjyGiYj1JC0XySgzLAlctmcmTL8qYiS1es8vFa1flD8X31WnTTypoTJDDvzaoF+DWvrezckzcKYBB+Sg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707083; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=RGc4PmwDJUY2QF+j34alJTh7Sm+vszH5LRr0q8NCyew=; b=UT5ddVTibHyEa/valj0UDC9BHtP8i6W30gH2blfcPFKwHNXIqnhyWmfn/yngZu7y9LxhCMMNZ+T1L+913QxrH9bYd7xLNcGgRbZR/IPnhEtOJOm40OKFjXtBGDazTa3ze9BI51sGumzTC7OXT3E1KHSFs/mxF2phb16TMMDG7JY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) by mx.zohomail.com with SMTPS id 1609707083591207.82200178651294; Sun, 3 Jan 2021 12:51:23 -0800 (PST) Received: by mail-wm1-f49.google.com with SMTP id 3so16637440wmg.4 for ; Sun, 03 Jan 2021 12:51:23 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id c16sm65638470wrx.51.2021.01.03.12.51.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=RGc4PmwDJUY2QF+j34alJTh7Sm+vszH5LRr0q8NCyew=; b=bYJWn38kCuUHBNggzd9rpovN13G8cx52I4Xl5uD2wmFJqBwkEGEAIRLem2Za1gGiAB AvswtiSQOYkSBuyd7T4q1Arm+y9ALJhzHvTbC3gSw/KA41kYk5auMVH6raLjWLM0uT/g +2MMKrVRgYwK0nRcXb6joMoRh1UnWGklokrIzHd27vZt3Jk3pUhByJutjSlcWqWXLadt H7mUl6qD0Vx5lImo3jDndxTq0Yljs6OL5Il8yArP3DiPmlU8ujJycVneIgdrU00LPypA i2oY5r2U6U6wozW9UxA4OXYTzsuf0Gs6neZkN4ptLunBSzLDYkCZPG8LUjgF/hsoERj1 PKXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=RGc4PmwDJUY2QF+j34alJTh7Sm+vszH5LRr0q8NCyew=; b=Ki1rO+jg1Yd2ynASd+Nj/NYKj4aA11BTmkMmtFXUbL8lhgTzFSc0h0QgxHssA7fX8k MnDEt54JZ2+3r4U4oTq4RtTHV0NicG5VhErqXOVt3IJDT5ps1P24CYkwbFNfevRtw7di vJqWmB7WNBhn/a1tAIesTubJw8AsiWJh87x3NeTUhhdq70pN3TBBl9RlncLstNqHHCiJ UqFExZ597ZYTx3SQpH1iMI6RfPuekAC6ROYH8pJZVp8Jia0nqrYVadcRqpGcmoKt/QNY 1dl6yFGzm0g0jJ8TCOM+zFX9Y3bT4D35jMhuLLosjviwfSm+gJttZRSd+uKjISvL5q/r xi/A== X-Gm-Message-State: AOAM530+3qoxjWPSB42ju0j1WQFGD4tdMwFjw6egRyiI4hWzP68NEFcw UeKTRp9K4tZTGc/gdNlN+dE= X-Google-Smtp-Source: ABdhPJw8BPqVtZQ01ieEAc934Sjb5eHx2Q7vdYFX5kWjzOQ3nQppCGBavS9Jc8B12GlSbUidLb69Ug== X-Received: by 2002:a1c:6856:: with SMTP id d83mr25172660wmc.119.1609707081844; Sun, 03 Jan 2021 12:51:21 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 12/35] audio/via-ac97: Simplify code and set user_creatable to false Date: Sun, 3 Jan 2021 21:49:58 +0100 Message-Id: <20210103205021.2837760-13-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan Remove some unneded, empty code and set user_creatable to false (besides being not implemented yet, so does nothing anyway) it's also normally part of VIA south bridge chips so no need to confuse users showing them these devices. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/audio/via-ac97.c | 51 +++++++++++++++++---------------------------- 1 file changed, 19 insertions(+), 32 deletions(-) diff --git a/hw/audio/via-ac97.c b/hw/audio/via-ac97.c index e617416ff76..6d556f74fc9 100644 --- a/hw/audio/via-ac97.c +++ b/hw/audio/via-ac97.c @@ -13,27 +13,13 @@ #include "hw/isa/vt82c686.h" #include "hw/pci/pci.h" =20 -struct VIAAC97State { - PCIDevice dev; -}; - -struct VIAMC97State { - PCIDevice dev; -}; - -OBJECT_DECLARE_SIMPLE_TYPE(VIAAC97State, VIA_AC97) -OBJECT_DECLARE_SIMPLE_TYPE(VIAMC97State, VIA_MC97) - -static void via_ac97_realize(PCIDevice *dev, Error **errp) +static void via_ac97_realize(PCIDevice *pci_dev, Error **errp) { - VIAAC97State *s =3D VIA_AC97(dev); - uint8_t *pci_conf =3D s->dev.config; - - pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_INVALIDATE | - PCI_COMMAND_PARITY); - pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_CAP_LIST | - PCI_STATUS_DEVSEL_MEDIUM); - pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03); + pci_set_word(pci_dev->config + PCI_COMMAND, + PCI_COMMAND_INVALIDATE | PCI_COMMAND_PARITY); + pci_set_word(pci_dev->config + PCI_STATUS, + PCI_STATUS_CAP_LIST | PCI_STATUS_DEVSEL_MEDIUM); + pci_set_long(pci_dev->config + PCI_INTERRUPT_PIN, 0x03); } =20 static void via_ac97_class_init(ObjectClass *klass, void *data) @@ -47,13 +33,15 @@ static void via_ac97_class_init(ObjectClass *klass, voi= d *data) k->revision =3D 0x50; k->class_id =3D PCI_CLASS_MULTIMEDIA_AUDIO; set_bit(DEVICE_CATEGORY_SOUND, dc->categories); - dc->desc =3D "AC97"; + dc->desc =3D "VIA AC97"; + /* Reason: Part of a south bridge chip */ + dc->user_creatable =3D false; } =20 static const TypeInfo via_ac97_info =3D { .name =3D TYPE_VIA_AC97, .parent =3D TYPE_PCI_DEVICE, - .instance_size =3D sizeof(VIAAC97State), + .instance_size =3D sizeof(PCIDevice), .class_init =3D via_ac97_class_init, .interfaces =3D (InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, @@ -61,15 +49,12 @@ static const TypeInfo via_ac97_info =3D { }, }; =20 -static void via_mc97_realize(PCIDevice *dev, Error **errp) +static void via_mc97_realize(PCIDevice *pci_dev, Error **errp) { - VIAMC97State *s =3D VIA_MC97(dev); - uint8_t *pci_conf =3D s->dev.config; - - pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_INVALIDATE | - PCI_COMMAND_VGA_PALETTE); - pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_DEVSEL_MEDIUM); - pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03); + pci_set_word(pci_dev->config + PCI_COMMAND, + PCI_COMMAND_INVALIDATE | PCI_COMMAND_VGA_PALETTE); + pci_set_word(pci_dev->config + PCI_STATUS, PCI_STATUS_DEVSEL_MEDIUM); + pci_set_long(pci_dev->config + PCI_INTERRUPT_PIN, 0x03); } =20 static void via_mc97_class_init(ObjectClass *klass, void *data) @@ -83,13 +68,15 @@ static void via_mc97_class_init(ObjectClass *klass, voi= d *data) k->class_id =3D PCI_CLASS_COMMUNICATION_OTHER; k->revision =3D 0x30; set_bit(DEVICE_CATEGORY_NETWORK, dc->categories); - dc->desc =3D "MC97"; + dc->desc =3D "VIA MC97"; + /* Reason: Part of a south bridge chip */ + dc->user_creatable =3D false; } =20 static const TypeInfo via_mc97_info =3D { .name =3D TYPE_VIA_MC97, .parent =3D TYPE_PCI_DEVICE, - .instance_size =3D sizeof(VIAMC97State), + .instance_size =3D sizeof(PCIDevice), .class_init =3D via_mc97_class_init, .interfaces =3D (InterfaceInfo[]) { { INTERFACE_CONVENTIONAL_PCI_DEVICE }, --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) client-ip=209.85.128.42; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f42.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1609707088; cv=none; d=zohomail.com; s=zohoarc; b=R2f11YFHxtpYw8Hfc/AW2yUqvin/UTIxg0ksg4dLpoahPhQ2cN5a/UYAmTOuTkqF9YrXvvlN3+TQHnWtAQh+eWAuqeSuSGUbUHaCiT7M5AO6T1tfgsQunMl7iZV6RxXPkdh+dtHhjFcTWMKrA3BpiQ8SDh4jVVqO+GfDRqlp0Ms= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707088; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=O2gt3iQC5/uG1rR4b3ZU58jd9X7v2XF7iZC6cSzs7Hk=; b=eOwrHhl1QctcvAJGRRVZ8TQZYekFhfrDNmtyxB5pMzqEEYK/i4SckLM6o160CFo3c4EtJQ35OjKFI0aZ7cNFlPiEG0KDF/5eb2XeIfKq6ihUTqZGyfIEv738e/2igyrlcVWbhUAsQemFwhzwT5NNAYwcs935a7PKZLjPvhJaNwg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) by mx.zohomail.com with SMTPS id 1609707088308791.5374447126816; Sun, 3 Jan 2021 12:51:28 -0800 (PST) Received: by mail-wm1-f42.google.com with SMTP id e25so16674652wme.0 for ; Sun, 03 Jan 2021 12:51:27 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id l8sm30138875wmf.35.2021.01.03.12.51.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=O2gt3iQC5/uG1rR4b3ZU58jd9X7v2XF7iZC6cSzs7Hk=; b=o7gC1ysL9YsWwSAyvJMzLQroh/sgbA+FhjxxKkrpxG1CfbLTz5A3aH26Fvt8DcsVpz EjSzUMStqLlTZE2Rn9tbS2WMVWtLWwoz/k7WUYQgFBK/vG9UNnk/VV8jXdxg8HCbmbxh +sNFHW+0DLNP3xR4/eAzi1mOYe0Z62zlD6BzAmKgGGoQ6hGxJyGkdVwD8o7KSYIWHjmC 9MIvZq3j/5iC2cw0/MGYbVsq6xnfIvXNJLRhNEl6+W68zCKINSy+O9PSMWzFzuglf4oT fJvoI4GC2GLeSqlviOs3xYcvWn0nHD2mGsALa+sFCc3MK6lW3b1r1zWG2t/xoz5sb8mj 0M3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=O2gt3iQC5/uG1rR4b3ZU58jd9X7v2XF7iZC6cSzs7Hk=; b=i2duIGW3ZqFURZAi+dwvUjeNFtaJQcn2dyRRTaR+6CVLRp8wQ+vM2CaAyTPNMMg8k5 B6JEE5HKgN+P1TTrxYchwf6oVsOnzaGEZjht+lEl0y5HXPMIDL0wqqwkUtm5hgNfuNQB NHXf4+EjEwoL8NzNluyNiBX8mC+kNGDqDmfwfE1xApjgFGLaTR3F7v4ykWffu6Ftu7aB VcTv2nhFLL4378oFWDLIi+hfiy3Te+ehl3zumeqVX5f816ru6XwCx6GBQJTxi2/2NZxT DNA6CqHcXU1HXJuvFJJu2W/XL0yVqA71/5tRo/XyaHwKJ2+1bVMhSzRCHQ9MeFQtcuNO MLxg== X-Gm-Message-State: AOAM532+cwqalFYHtY/o3eDSgGzi15el38vBvusGCLB/LHwLVORgESlZ eASGfqXFaNNttNpUsr6t1ZQ= X-Google-Smtp-Source: ABdhPJxKLGCJBhoScMbmykwz0K2/+IEs5YmogdUwphwyerumyTrByy1CPMwzEsCX4ohX0UlKNtjyNQ== X-Received: by 2002:a05:600c:2106:: with SMTP id u6mr24436020wml.4.1609707086496; Sun, 03 Jan 2021 12:51:26 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 13/35] vt82c686: Remove legacy vt82c686b_isa_init() function Date: Sun, 3 Jan 2021 21:49:59 +0100 Message-Id: <20210103205021.2837760-14-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <58d7585f979f154b1f1e69fdc026eed6dbc7996f.1609584216.git.balato= n@eik.bme.hu> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/isa/vt82c686.h | 3 +-- hw/isa/vt82c686.c | 9 --------- hw/mips/fuloong2e.c | 4 +++- 3 files changed, 4 insertions(+), 12 deletions(-) diff --git a/include/hw/isa/vt82c686.h b/include/hw/isa/vt82c686.h index ff80a926dcb..8d2d276fe16 100644 --- a/include/hw/isa/vt82c686.h +++ b/include/hw/isa/vt82c686.h @@ -1,13 +1,12 @@ #ifndef HW_VT82C686_H #define HW_VT82C686_H =20 - +#define TYPE_VT82C686B_ISA "vt82c686b-isa" #define TYPE_VT82C686B_SUPERIO "vt82c686b-superio" #define TYPE_VIA_AC97 "via-ac97" #define TYPE_VIA_MC97 "via-mc97" =20 /* vt82c686.c */ -ISABus *vt82c686b_isa_init(PCIBus * bus, int devfn); I2CBus *vt82c686b_pm_init(PCIBus *bus, int devfn, uint32_t smb_io_base, qemu_irq sci_irq); =20 diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index 9567326d8e2..2912c253dca 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -49,7 +49,6 @@ struct VT82C686BISAState { SuperIOConfig superio_conf; }; =20 -#define TYPE_VT82C686B_ISA "vt82c686b-isa" OBJECT_DECLARE_SIMPLE_TYPE(VT82C686BISAState, VT82C686B_ISA) =20 static void superio_ioport_writeb(void *opaque, hwaddr addr, uint64_t data, @@ -367,14 +366,6 @@ static void vt82c686b_realize(PCIDevice *d, Error **er= rp) &vt82c->superio); } =20 -ISABus *vt82c686b_isa_init(PCIBus *bus, int devfn) -{ - PCIDevice *d; - - d =3D pci_create_simple_multifunction(bus, devfn, true, TYPE_VT82C686B= _ISA); - return ISA_BUS(qdev_get_child_bus(DEVICE(d), "isa.0")); -} - static void via_class_init(ObjectClass *klass, void *data) { DeviceClass *dc =3D DEVICE_CLASS(klass); diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index 8287e65c52c..435f0e5be5b 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -240,7 +240,9 @@ static void vt82c686b_southbridge_init(PCIBus *pci_bus,= int slot, qemu_irq intc, ISABus *isa_bus; PCIDevice *dev; =20 - isa_bus =3D vt82c686b_isa_init(pci_bus, PCI_DEVFN(slot, 0)); + dev =3D pci_create_simple_multifunction(pci_bus, PCI_DEVFN(slot, 0), t= rue, + TYPE_VT82C686B_ISA); + isa_bus =3D ISA_BUS(qdev_get_child_bus(DEVICE(dev), "isa.0")); assert(isa_bus); *p_isa_bus =3D isa_bus; /* Interrupt controller */ --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.45 as permitted sender) client-ip=209.85.221.45; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f45.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.45 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1609707093; cv=none; d=zohomail.com; s=zohoarc; b=nUDL9WX0XRb+/TWhqVUAkfMupXOINiIrbjQeilKQLwJtjuH64e5UquAMGfWD3PTCzppW3BomvQVMakMLfG0WcVKZxVIB6rWAYkJXSUpb8kO+C41TpXsViD8FqQKm0aM9hhuYUBDk6huNu+I5qTt48gRs8bU+UbGrcFOpS5Z1uFc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707093; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=hJrzfFBwJziaAyqYy93hx4DlRm1EQlMzThmIeVx9X0A=; b=bFULh1gddXO2IRdDVRsCkgsOVn+oVwXn7daTfWkwS437MpMBcD5ywhY4k6Gml4VfP7gG1Lfh56N89shmrVGk5W6Yi/bnQV26uj1SsS0lvyNxjLCfmEdvvflwSLKZ0flq43HkPevoeX4Oa5NAme+f9JZNyRvMMprIiXlkmB1DYIQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.45 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wr1-f45.google.com (mail-wr1-f45.google.com [209.85.221.45]) by mx.zohomail.com with SMTPS id 1609707092992914.1502281668451; Sun, 3 Jan 2021 12:51:32 -0800 (PST) Received: by mail-wr1-f45.google.com with SMTP id c5so29458635wrp.6 for ; Sun, 03 Jan 2021 12:51:32 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id m11sm29066988wmi.16.2021.01.03.12.51.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=hJrzfFBwJziaAyqYy93hx4DlRm1EQlMzThmIeVx9X0A=; b=LEzfXUC45FMtcebYOuVRq1Jo+R8lhf0lw5pJWEwu/C4tCpX54p9IXTzNHo+//IgN6y 3p5LI2TSpuUl6Gf5vrLuKkwzUaGXKK8ACKVFGnKlD3fwPLhZpYRb/c1A1/NozwsFg9M8 AnEWS014d+ImLTuIRDScDIZw8hFqZGxV7AmzT3ko2tdC8fMcAeBkj659emHCWEqM2ftw aHkPhINmH89weeOQmR762qc6Ym/7syxnzE/j/4t4ZDyRwglHjGbvOVAr4h69S3nV91X/ WUr9b7D78bP9reIhvCdtIdjmF4knd0d/tyhsaH4Ij9L28W8xSY/IJYV9MH6elqirfF5X KjvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=hJrzfFBwJziaAyqYy93hx4DlRm1EQlMzThmIeVx9X0A=; b=objXVWxI3VdXt3xuH6MXydM+kB032oanEYcs11h8MUfxiNB/oD1RBwEHTEozXvPEUA asFUEwotAdhgD9r7EeQ9Aa9T1ZeXqkf4/ZTJ5ZuAMm/3fW2yyt4pOsSMQszVNYVJ4ntJ UWZ87pmweL8SfC8Qbu5NR2IeDT84WaerLxOSRUb937J1O8cgLFPukZz4UoCYVqFzEZC0 TJQdt8EMJ9rxi2XLEigXAdWk2SR5LTpVwpPZhyuhV5AiJeTW1v+WA+GYuS3TJrwFp7HM YddKXOmgbJcTHdYevg94YPlLlRG75x5x2L7cF+r52qF0TG8qdnfJ6GcgaKSRgdnsmQzi 2yqA== X-Gm-Message-State: AOAM531PNX9pdmjwPYC+lv8gvj+jEbKg8JeOnxejsjeZJC4CG28CfXV4 r7W8rhpFVXTw7FwG22VqOPc= X-Google-Smtp-Source: ABdhPJzVnmfMY/Mea1XJxIY4fh7AmOBVbzlb1i6AM9tyMm6ujJCTTdmrQoeO2VjVRxXHcAc+jbLzuA== X-Received: by 2002:adf:f58a:: with SMTP id f10mr80219954wro.338.1609707091258; Sun, 03 Jan 2021 12:51:31 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 14/35] vt82c686: Remove legacy vt82c686b_pm_init() function Date: Sun, 3 Jan 2021 21:50:00 +0100 Message-Id: <20210103205021.2837760-15-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan Remove legacy vt82c686b_pm_init() function and also rename VT82C686B_PM type name to match other device names. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/isa/vt82c686.h | 5 +---- hw/isa/vt82c686.c | 18 ------------------ hw/mips/fuloong2e.c | 5 ++++- 3 files changed, 5 insertions(+), 23 deletions(-) diff --git a/include/hw/isa/vt82c686.h b/include/hw/isa/vt82c686.h index 8d2d276fe16..5b0a1ffe725 100644 --- a/include/hw/isa/vt82c686.h +++ b/include/hw/isa/vt82c686.h @@ -3,11 +3,8 @@ =20 #define TYPE_VT82C686B_ISA "vt82c686b-isa" #define TYPE_VT82C686B_SUPERIO "vt82c686b-superio" +#define TYPE_VT82C686B_PM "vt82c686b-pm" #define TYPE_VIA_AC97 "via-ac97" #define TYPE_VIA_MC97 "via-mc97" =20 -/* vt82c686.c */ -I2CBus *vt82c686b_pm_init(PCIBus *bus, int devfn, uint32_t smb_io_base, - qemu_irq sci_irq); - #endif diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index 2912c253dca..cd87ec01039 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -12,7 +12,6 @@ =20 #include "qemu/osdep.h" #include "hw/isa/vt82c686.h" -#include "hw/i2c/i2c.h" #include "hw/pci/pci.h" #include "hw/qdev-properties.h" #include "hw/isa/isa.h" @@ -167,7 +166,6 @@ struct VT686PMState { uint32_t smb_io_base; }; =20 -#define TYPE_VT82C686B_PM "VT82C686B_PM" OBJECT_DECLARE_SIMPLE_TYPE(VT686PMState, VT82C686B_PM) =20 static void pm_update_sci(VT686PMState *s) @@ -271,22 +269,6 @@ static void vt82c686b_pm_realize(PCIDevice *dev, Error= **errp) acpi_pm1_cnt_init(&s->ar, &s->io, false, false, 2); } =20 -I2CBus *vt82c686b_pm_init(PCIBus *bus, int devfn, uint32_t smb_io_base, - qemu_irq sci_irq) -{ - PCIDevice *dev; - VT686PMState *s; - - dev =3D pci_new(devfn, TYPE_VT82C686B_PM); - qdev_prop_set_uint32(&dev->qdev, "smb_io_base", smb_io_base); - - s =3D VT82C686B_PM(dev); - - pci_realize_and_unref(dev, bus, &error_fatal); - - return s->smb.smbus; -} - static Property via_pm_properties[] =3D { DEFINE_PROP_UINT32("smb_io_base", VT686PMState, smb_io_base, 0), DEFINE_PROP_END_OF_LIST(), diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index 435f0e5be5b..e5d08669069 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -261,7 +261,10 @@ static void vt82c686b_southbridge_init(PCIBus *pci_bus= , int slot, qemu_irq intc, pci_create_simple(pci_bus, PCI_DEVFN(slot, 2), "vt82c686b-usb-uhci"); pci_create_simple(pci_bus, PCI_DEVFN(slot, 3), "vt82c686b-usb-uhci"); =20 - *i2c_bus =3D vt82c686b_pm_init(pci_bus, PCI_DEVFN(slot, 4), 0xeee1, NU= LL); + dev =3D pci_new(PCI_DEVFN(slot, 4), TYPE_VT82C686B_PM); + qdev_prop_set_uint32(DEVICE(dev), "smb_io_base", 0xeee1); + pci_realize_and_unref(dev, pci_bus, &error_fatal); + *i2c_bus =3D I2C_BUS(qdev_get_child_bus(DEVICE(dev), "i2c")); =20 /* Audio support */ pci_create_simple(pci_bus, PCI_DEVFN(slot, 5), TYPE_VIA_AC97); --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) client-ip=209.85.128.54; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f54.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707097; cv=none; d=zohomail.com; s=zohoarc; b=KmtHM4eSkcwLwKpt2PN65RoIGl6fRq252q4fXmjf8iRymJ2i/odqJbmFq+V5SOtjUXFQlfP0kSgRYK5DqFiZqE7XlkotjXrStx8ql5f9sJuPvyJwbj/qCf8pDYJMngsIF0W3flXOih5LV3wTfO9nAb7pcpcoreSBEkxwFi4PLGI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707097; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=vk9ef97QDUNpHBStg8pmVYzoNEbvcbdNF0ytCvsbRxg=; b=ApZqee4WVL1tSWJSnhcxCaOVXjDXLzs8WxZ+CPhyWhlGGpZjPo5PnstVQERvLo14MX43x2yyuV/Xse9Bbe3qxy+U6+oAYCX1GdU0ll96RC/WrqIopwmMN22LAGVYQ49zFMrM5iwBadO5pHCJnZMf3ZnnJXuksBg5wx8It0M9c/Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) by mx.zohomail.com with SMTPS id 1609707097849207.2187830552308; Sun, 3 Jan 2021 12:51:37 -0800 (PST) Received: by mail-wm1-f54.google.com with SMTP id g185so16654449wmf.3 for ; Sun, 03 Jan 2021 12:51:37 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id u10sm28588693wmd.43.2021.01.03.12.51.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=vk9ef97QDUNpHBStg8pmVYzoNEbvcbdNF0ytCvsbRxg=; b=E2/8zhP0cYsgiOYb8EDZ1E81JJMVM7FJp4m1nH4rzcLcGI1U1X5sX1NAxYcWXByOUN KIL8ZCOmivkSAITgsIFwzlIVBO16KXIpmLr+cj72UI9k6lsOX7TVPM7r9J3Mv3UqKNdi c1Em4wnrNtYjgluzdP7/rQHuj3Pqpexv+bYcgmFX+3tYwDNCZHGr4OIANz0950/YRUT3 yGP+lf/27oiQ9O9tUIHltuXbG1t5/dRVk8CeVKoXTL4bAYwZ+m10fKkV6Is8dosrune+ vEoQ7TPMEb7mw8O5sLIdRU5Yf8DpBOfS28WbxXJcSYPypq+Xb2UA9kdXuAWO2pnNc7rt aUVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=vk9ef97QDUNpHBStg8pmVYzoNEbvcbdNF0ytCvsbRxg=; b=rw92WVHPSmA7gsnLJex0UdqCw4VN/4cE0mauTTVdzvkpQg2Ml6CqtmngdsJ8xR8hoj DwgRh7Kt7MuCeZwEcufZEhXsbfkKPhfcD7ghxcG4D1xTKbSt/s95PNKPL3X2FaU4MakZ vkvs3Dc6pH//nyaT3CXMOtaUZClWkgQCI1XZiY+gbihZB0VXc5k1I/R4SgEicVTfIdB6 Bv8ELG2YDJ5zHXrHaejz2z8lH/2Azq+und7bEzRV90IyzdliRab4vq8IOpmHji/cSJFt Vk6kbIOX9gzFxr2DGZhANoRG1B0GRAyWA1he2eJc0sgjAPhtc0W+DzhesAFM5fI50YX3 ukZQ== X-Gm-Message-State: AOAM533L8A1Se6MkZ22SeNmUmZ/0ZZiq634gHioqhoGv2b+M2WdLvGXD 2z1gfsu0f+WqHcaQB31+PGM= X-Google-Smtp-Source: ABdhPJxvUyyvSW5JYy9Dbo8laOLIJYKpbwRyG8hHKBgAXkCfKVGn7FIffzfOJZhrhvTr23nxSMEvmw== X-Received: by 2002:a7b:c35a:: with SMTP id l26mr23514489wmj.182.1609707096081; Sun, 03 Jan 2021 12:51:36 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 15/35] vt82c686: Convert debug printf to trace points Date: Sun, 3 Jan 2021 21:50:01 +0100 Message-Id: <20210103205021.2837760-16-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan Drop DPRINTF and use trace functions instead. Two debug messages about unimplemented registers could be converted to qemu_log_mask() but in reality all registers are currently unimplemented (we just store and return values of writable regs but do nothing with them). As we already trace register access there's no need for additional debug messages so these are just removed and a comment is added as a reminder. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <785854022a37035f66d89e70cb6ca1bc0e0d0163.1609584216.git.balato= n@eik.bme.hu> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/isa/vt82c686.c | 51 +++++++++++++-------------------------------- hw/isa/trace-events | 6 ++++++ 2 files changed, 21 insertions(+), 36 deletions(-) diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index cd87ec01039..d7ce15bf9f3 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -27,14 +27,7 @@ #include "qemu/timer.h" #include "exec/address-spaces.h" #include "qom/object.h" - -/* #define DEBUG_VT82C686B */ - -#ifdef DEBUG_VT82C686B -#define DPRINTF(fmt, ...) fprintf(stderr, "%s: " fmt, __func__, ##__VA_ARG= S__) -#else -#define DPRINTF(fmt, ...) -#endif +#include "trace.h" =20 typedef struct SuperIOConfig { uint8_t config[0x100]; @@ -55,12 +48,12 @@ static void superio_ioport_writeb(void *opaque, hwaddr = addr, uint64_t data, { SuperIOConfig *superio_conf =3D opaque; =20 - DPRINTF("superio_ioport_writeb address 0x%x val 0x%x\n", addr, data); - if (addr =3D=3D 0x3f0) { + if (addr =3D=3D 0x3f0) { /* config index register */ superio_conf->index =3D data & 0xff; } else { bool can_write =3D true; - /* 0x3f1 */ + /* 0x3f1, config data register */ + trace_via_superio_write(superio_conf->index, data & 0xff); switch (superio_conf->index) { case 0x00 ... 0xdf: case 0xe4: @@ -73,18 +66,7 @@ static void superio_ioport_writeb(void *opaque, hwaddr a= ddr, uint64_t data, case 0xfd ... 0xff: can_write =3D false; break; - case 0xe7: - if ((data & 0xff) !=3D 0xfe) { - DPRINTF("change uart 1 base. unsupported yet\n"); - can_write =3D false; - } - break; - case 0xe8: - if ((data & 0xff) !=3D 0xbe) { - DPRINTF("change uart 2 base. unsupported yet\n"); - can_write =3D false; - } - break; + /* case 0xe6 ... 0xe8: Should set base port of parallel and serial= */ default: break; =20 @@ -98,9 +80,10 @@ static void superio_ioport_writeb(void *opaque, hwaddr a= ddr, uint64_t data, static uint64_t superio_ioport_readb(void *opaque, hwaddr addr, unsigned s= ize) { SuperIOConfig *superio_conf =3D opaque; + uint8_t val =3D superio_conf->config[superio_conf->index]; =20 - DPRINTF("superio_ioport_readb address 0x%x\n", addr); - return superio_conf->config[superio_conf->index]; + trace_via_superio_read(superio_conf->index, val); + return val; } =20 static const MemoryRegionOps superio_ops =3D { @@ -141,16 +124,14 @@ static void vt82c686b_isa_reset(DeviceState *dev) } =20 /* write config pci function0 registers. PCI-ISA bridge */ -static void vt82c686b_write_config(PCIDevice *d, uint32_t address, +static void vt82c686b_write_config(PCIDevice *d, uint32_t addr, uint32_t val, int len) { VT82C686BISAState *vt686 =3D VT82C686B_ISA(d); =20 - DPRINTF("vt82c686b_write_config address 0x%x val 0x%x len 0x%x\n", - address, val, len); - - pci_default_write_config(d, address, val, len); - if (address =3D=3D 0x85) { /* enable or disable super IO configure */ + trace_via_isa_write(addr, val, len); + pci_default_write_config(d, addr, val, len); + if (addr =3D=3D 0x85) { /* enable or disable super IO configure */ memory_region_set_enabled(&vt686->superio, val & 0x2); } } @@ -203,12 +184,10 @@ static void pm_io_space_update(VT686PMState *s) memory_region_transaction_commit(); } =20 -static void pm_write_config(PCIDevice *d, - uint32_t address, uint32_t val, int len) +static void pm_write_config(PCIDevice *d, uint32_t addr, uint32_t val, int= len) { - DPRINTF("pm_write_config address 0x%x val 0x%x len 0x%x\n", - address, val, len); - pci_default_write_config(d, address, val, len); + trace_via_pm_write(addr, val, len); + pci_default_write_config(d, addr, val, len); } =20 static int vmstate_acpi_post_load(void *opaque, int version_id) diff --git a/hw/isa/trace-events b/hw/isa/trace-events index 3544c6213c3..d267d3e6524 100644 --- a/hw/isa/trace-events +++ b/hw/isa/trace-events @@ -13,3 +13,9 @@ pc87312_io_write(uint32_t addr, uint32_t val) "write addr= =3D0x%x val=3D0x%x" # apm.c apm_io_read(uint8_t addr, uint8_t val) "read addr=3D0x%x val=3D0x%02x" apm_io_write(uint8_t addr, uint8_t val) "write addr=3D0x%x val=3D0x%02x" + +# vt82c686.c +via_isa_write(uint32_t addr, uint32_t val, int len) "addr 0x%x val 0x%x le= n 0x%x" +via_pm_write(uint32_t addr, uint32_t val, int len) "addr 0x%x val 0x%x len= 0x%x" +via_superio_read(uint8_t addr, uint8_t val) "addr 0x%x val 0x%x" +via_superio_write(uint8_t addr, uint32_t val) "addr 0x%x val 0x%x" --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) client-ip=209.85.221.42; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f42.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707102; cv=none; d=zohomail.com; s=zohoarc; b=buUbuDr8BSdq5f4n3bzj2dDMrsjH5cOoVj1CQZOK+tdYUH6Bxw6fCSAwOuGaY9uMU0qF5wiHOSmQCPQjBvdbV2X9YlhAc6UUGptZIcfPDDt3d+pqW40psJLnqaHIIxbNnMVxM6FsRfo7hNpvN6fyVOtaLTFzxwvlOTOZ9nVeR+E= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707102; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=xve8X86xXcoC12f53uFA7Uz4KW4E7YMQPcAROtru5iU=; b=XccoiC293ruN+hCfay9EY4FOuhgb3I/V09JA2rwfJfTBemKdQA0v3hduWNCxWaQAU/bhUEvMCgoqBzAaWkIbXD8zOEBFzMaInl8wkAi2HoULzGnNObGFsKEnz6Bfb5agCdzkSAU3+8ALBOl+noGE5QGfovI0Rh/7fVrC+DHkITQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f42.google.com (mail-wr1-f42.google.com [209.85.221.42]) by mx.zohomail.com with SMTPS id 1609707102632910.3190173188999; Sun, 3 Jan 2021 12:51:42 -0800 (PST) Received: by mail-wr1-f42.google.com with SMTP id w5so29440301wrm.11 for ; Sun, 03 Jan 2021 12:51:42 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id g1sm46828125wrq.30.2021.01.03.12.51.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=xve8X86xXcoC12f53uFA7Uz4KW4E7YMQPcAROtru5iU=; b=tboObtwEmqfca8uUOaagHa9ySXd04fPtELMCod70NqlTmFeVCtCjS21yUDoz495x2h xvUPn7DLEIIt8JfJNhnnDP1DB3l4MXu8CLpQdEtiPbSOwYYdbrlg2hotqDz9tVOaCFJz WDDrjlKBGyweTZCh/9YKlBy7P+y2ui+vvuU3WFrumiLMCNpSCZvJ4/Qt7hBvh7Qr+kZh yPxWy2OZsVrcOZc6TduS7MVFZV0J98HiKTAEvCduaDi3rreC7yGX7Zome57wBr77EBKg tIuMiRsTzHJl4RRpt7aZhohyLtIBUyouc/KTlNluz3zNt84SpmpA9VdNGVldBGKvC4FH XBIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=xve8X86xXcoC12f53uFA7Uz4KW4E7YMQPcAROtru5iU=; b=ZIyzgEPxKR2LZkd1cVA61LrcEsChbcCVTMIpFcWDKm/cQR0v9adu92Aebg6mPeTMai nnYzw6Q9WB6jRy8HZ6vXbyZqeyr7it+N+dZTol0Y66oKFiYkJvTwB/gXah34JuEeTed8 GUY4nOHzUl1tw4u2mY5BF5VKCh9i4rNNRK/WVhm4rFdj6J2ebRjmDqrFu3RImFnKSlLN sLSi3eeDj7aO4l4g8FIWSa3u6/i3TmI4pQ8L8o+DMB4WPoNdLYSo8tyTS1h97Po8LyQI Jt6IP8k7/u1H+gghUcIVwRFDE8LLT3Lbg6JlNc/08L1ZO6ZebzlAgBpYtpTfBYR02/Jt Q/vg== X-Gm-Message-State: AOAM532wZJ2S8EVyX48QYvhMW9c6twPa1A8auJXAe8cjJ796U+jMHaTH sDu8wImjuVSjwXAm5+Z0Ly4= X-Google-Smtp-Source: ABdhPJyqE+x3cdlkwXWbN9YVJ7kVef4L5n0Du3UGxgE0n0CPnwIhNocHTkxV8m3X6XHDvB99T1+Jqw== X-Received: by 2002:adf:82c5:: with SMTP id 63mr77865759wrc.38.1609707100877; Sun, 03 Jan 2021 12:51:40 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 16/35] vt82c686: Remove unneeded includes and defines Date: Sun, 3 Jan 2021 21:50:02 +0100 Message-Id: <20210103205021.2837760-17-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan These are not used or not needed. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <35cefcc3518a3395a796bb6ad6fbc308adc65266.1609584216.git.balato= n@eik.bme.hu> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/isa/vt82c686.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index d7ce15bf9f3..02d6759c00b 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -16,9 +16,7 @@ #include "hw/qdev-properties.h" #include "hw/isa/isa.h" #include "hw/isa/superio.h" -#include "hw/sysbus.h" #include "migration/vmstate.h" -#include "hw/mips/mips.h" #include "hw/isa/apm.h" #include "hw/acpi/acpi.h" #include "hw/i2c/pm_smbus.h" @@ -26,7 +24,6 @@ #include "qemu/module.h" #include "qemu/timer.h" #include "exec/address-spaces.h" -#include "qom/object.h" #include "trace.h" =20 typedef struct SuperIOConfig { @@ -136,8 +133,6 @@ static void vt82c686b_write_config(PCIDevice *d, uint32= _t addr, } } =20 -#define ACPI_DBG_IO_ADDR 0xb044 - struct VT686PMState { PCIDevice dev; MemoryRegion io; --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.45 as permitted sender) client-ip=209.85.128.45; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f45.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.45 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1609707107; cv=none; d=zohomail.com; s=zohoarc; b=gqUlAsNScOLcyw25Ko17MMUXRmWWOZgXLGKgd3HIL0OFrgQfFUGh2srJdS+uER00UtDxOKRtRJJNKZFon+GUOKQbFcwlntCQAoPILDUf+Afr3fhvsq5C/Quh4CApbqGScoeT/TGYTSTtSKzZTbDKabmUFjBn2oFeN8DOY2LT2Fg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707107; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=okh/tsWUEfl+thMVnF4caC8TcGYG7BGDE6eyhBrKnR8=; b=Ji3pRbhCkBKJCu194oiALZi4sK9/BA++lbabjNJCqUgjD8Cb1nbI0Y2Qg/GN5qVSpbGWpynhyHhiBZ2KQ+KeSVO71RvtQFeD7KqpQDJHejBZBAfHhqvWee9iBRHpFAtrITuh4a+sEJs/LSLiq2AJUBf6TaqiAvZDkougF5VOCmA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.45 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) by mx.zohomail.com with SMTPS id 1609707107481633.9785978363681; Sun, 3 Jan 2021 12:51:47 -0800 (PST) Received: by mail-wm1-f45.google.com with SMTP id c124so15932940wma.5 for ; Sun, 03 Jan 2021 12:51:46 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id w8sm87247015wrl.91.2021.01.03.12.51.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=okh/tsWUEfl+thMVnF4caC8TcGYG7BGDE6eyhBrKnR8=; b=uOULFtzk2LqU+nCD0+X0AiaIaiMdBfpBOEYAstrqDhFENKOEfjvmfEc9TrgomJyp1s yZWj2TpeTYShKn7I8vJw8h/zIP67DWIsGZiDbKzOpxxPnffo37h+T5b4z2xqEvxUPPbB CYmy8H5SM7ebVZsbWhhQPbV1VanpgFgd8xOCj9zXvg81Wp/ceh0GQ+MelgT5RC1d+SVV /T1yoo3dr8oGFwxUcy1RvGttYaK6jQn86WOJUTeOl5nsTqEiT2YiGtQNNJJgeBIYv8d5 zm964FpD58XhnuSPTZZ2PqhDXVUt0va/xaS3TzTZNORAQZD+F3UnCDTS9j1e+J31QpFI twsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=okh/tsWUEfl+thMVnF4caC8TcGYG7BGDE6eyhBrKnR8=; b=qCQOlXBDUGkOcuy3Lri2Ee91xSiAOwU0JQsJoD90DOFMxymgfpxzLNFe3izmzJL8vE 4zi2udeU7Sp53vjfe9NeMfokvMMieEcQqvh9ghduN1xsEehGJaedt4a8jJCT/KoNbxJc ++jI87iNKXsS0I7OrvvoYenjTdruvoyL9JFTaZ6nblwSyIOAH+Gn+q4jlmmqUU4h1ipL DeuZUlhyo+pU+6KysDuwwodtqn3BiFQ/uw+csla5LqBl2psoCUgmOrvK7TRObpoVr1Td L80eDx8I9Z5imPzNPij+cWE6oReOxsUFZeBUuFLBD6FGL0OPnFc9IGx9/G1pspdeYHTL qKKA== X-Gm-Message-State: AOAM532j70IYahAe8/toQABdNBrNT1ptBoItR6XssptcStTH6qMQLtMk 6EsbFMwYi6IyjQEJ0rxSFCk= X-Google-Smtp-Source: ABdhPJwflvWW1+9AxuLmyLQ1em4cAoL1K/ipCisVffnnAXzESVLUmuNSWD3Se2L/p6Zt67gwXpVA4w== X-Received: by 2002:a7b:cb93:: with SMTP id m19mr23887611wmi.128.1609707105672; Sun, 03 Jan 2021 12:51:45 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 17/35] vt82c686: Use shorter name for local variable holding object state Date: Sun, 3 Jan 2021 21:50:03 +0100 Message-Id: <20210103205021.2837760-18-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan Rename local variable holding object state for readability and consistency. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <69655b23df2ecebbf0aff29726f4b4746f5b74de.1609584216.git.balato= n@eik.bme.hu> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/isa/vt82c686.c | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index 02d6759c00b..2633cfe7dc7 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -95,8 +95,8 @@ static const MemoryRegionOps superio_ops =3D { =20 static void vt82c686b_isa_reset(DeviceState *dev) { - VT82C686BISAState *vt82c =3D VT82C686B_ISA(dev); - uint8_t *pci_conf =3D vt82c->dev.config; + VT82C686BISAState *s =3D VT82C686B_ISA(dev); + uint8_t *pci_conf =3D s->dev.config; =20 pci_set_long(pci_conf + PCI_CAPABILITY_LIST, 0x000000c0); pci_set_word(pci_conf + PCI_COMMAND, PCI_COMMAND_IO | PCI_COMMAND_MEMO= RY | @@ -112,24 +112,24 @@ static void vt82c686b_isa_reset(DeviceState *dev) pci_conf[0x5f] =3D 0x04; pci_conf[0x77] =3D 0x10; /* GPIO Control 1/2/3/4 */ =20 - vt82c->superio_conf.config[0xe0] =3D 0x3c; - vt82c->superio_conf.config[0xe2] =3D 0x03; - vt82c->superio_conf.config[0xe3] =3D 0xfc; - vt82c->superio_conf.config[0xe6] =3D 0xde; - vt82c->superio_conf.config[0xe7] =3D 0xfe; - vt82c->superio_conf.config[0xe8] =3D 0xbe; + s->superio_conf.config[0xe0] =3D 0x3c; + s->superio_conf.config[0xe2] =3D 0x03; + s->superio_conf.config[0xe3] =3D 0xfc; + s->superio_conf.config[0xe6] =3D 0xde; + s->superio_conf.config[0xe7] =3D 0xfe; + s->superio_conf.config[0xe8] =3D 0xbe; } =20 /* write config pci function0 registers. PCI-ISA bridge */ static void vt82c686b_write_config(PCIDevice *d, uint32_t addr, uint32_t val, int len) { - VT82C686BISAState *vt686 =3D VT82C686B_ISA(d); + VT82C686BISAState *s =3D VT82C686B_ISA(d); =20 trace_via_isa_write(addr, val, len); pci_default_write_config(d, addr, val, len); if (addr =3D=3D 0x85) { /* enable or disable super IO configure */ - memory_region_set_enabled(&vt686->superio, val & 0x2); + memory_region_set_enabled(&s->superio, val & 0x2); } } =20 @@ -289,7 +289,7 @@ static const VMStateDescription vmstate_via =3D { /* init the PCI-to-ISA bridge */ static void vt82c686b_realize(PCIDevice *d, Error **errp) { - VT82C686BISAState *vt82c =3D VT82C686B_ISA(d); + VT82C686BISAState *s =3D VT82C686B_ISA(d); uint8_t *pci_conf; ISABus *isa_bus; uint8_t *wmask; @@ -311,15 +311,15 @@ static void vt82c686b_realize(PCIDevice *d, Error **e= rrp) } } =20 - memory_region_init_io(&vt82c->superio, OBJECT(d), &superio_ops, - &vt82c->superio_conf, "superio", 2); - memory_region_set_enabled(&vt82c->superio, false); + memory_region_init_io(&s->superio, OBJECT(d), &superio_ops, + &s->superio_conf, "superio", 2); + memory_region_set_enabled(&s->superio, false); /* * The floppy also uses 0x3f0 and 0x3f1. * But we do not emulate a floppy, so just set it here. */ memory_region_add_subregion(isa_bus->address_space_io, 0x3f0, - &vt82c->superio); + &s->superio); } =20 static void via_class_init(ObjectClass *klass, void *data) --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.48 as permitted sender) client-ip=209.85.221.48; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f48.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707112; cv=none; d=zohomail.com; s=zohoarc; b=Tb/5KKHDuTfI8R3cAy+joFa1pzhssfvYWuR9fIXAHT6bEOnZAGQqr179ItHvathKmHRCKKz6eKTF1XTunJuwGlY6yINu44CYW8Fj+JGqOxQLpD1dWyMPIJLE2p/P0vhM1v8njSNVVRK9jtr/6QYgI15GZhMzm+GPfLUQ0yMZkB0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707112; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=vk9FSJH/4u3dFdJmIzeghhHRNBV/JjI+CeCTMbnyQds=; b=R/qTFZztJ6xuQIWut77HsYJ+e6dPeWMg1yFFFQm6fhBb59SesG2VgLRNoTClsBVy+gRcXXexb63VVZ/st/Ud8Lj/yyCtjWf6Ey6+AJ+bcVxJnXUAWuLEei8UkdV0Hpm74/dGHw5M/YIkhrKK0DCDOWK9Vm85n0xOAaddPPkc9Ho= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f48.google.com (mail-wr1-f48.google.com [209.85.221.48]) by mx.zohomail.com with SMTPS id 1609707112859675.8505585172176; Sun, 3 Jan 2021 12:51:52 -0800 (PST) Received: by mail-wr1-f48.google.com with SMTP id y17so29462479wrr.10 for ; Sun, 03 Jan 2021 12:51:52 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id y2sm29613750wma.6.2021.01.03.12.51.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=vk9FSJH/4u3dFdJmIzeghhHRNBV/JjI+CeCTMbnyQds=; b=FvC9Wq/sFBjseNC5QpYpGKEJXZzl4y/HZXwpiEBprR1yzzZkhrLiJG5xMSJN+3HRZK Hnu9lKYnR4iaKrY5XS0CnTKk1YPX6lTUu7YYIKqj0N0QqnA7xpxIsjvLos9etE3Cq0XH xiNZefj9DpmOMd0csTOln2NthzCOyyGoyAwKAuKoh4N3CNBPQ3lUzukVJyIHi06AdG6a zyhFVYnL4C9md3eEKn08sDdh5YMmTm498MqSffqDT4IZT20BcYPF4ZVzWfl/sw6rb98+ Zep0KVcWqu5O/sIY6SSqnYUaT9m/o5SJhi/anqyqcXbhNWNVCUECktAC3BTPSzfoHe5K D1xQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=vk9FSJH/4u3dFdJmIzeghhHRNBV/JjI+CeCTMbnyQds=; b=BHg7HWKhrwA1S4tPmYqaGdvWc7UXy6a1a1SLPJPBxBL2rkjfEmN917uSSfGqoCqtHZ btuft31uDq+AvHV6JS5eFdLsrtd9227Bf3sBpSr9UU5Lx6sjd3XeR2WZrEpdfVx5SBrC x2e4b0z3K5tz6xad5T9Ee7WN7Ne3SGXN52AR1+qOPNhJQWofysLJPWccSOijJJoNFB+g DryBgTUN9J+kCr0YTPulj6Vo3XCaDMaSkwaHDfes7ErphddtVv9qrnm0O1RSQGJqdA3l MUH/eYMXEJxEt5SvyRYkFVtJOE+RBGNYcEU7sBff4L2DFI+ZVxo/kHyISeJp3kl2TI7Z KNVg== X-Gm-Message-State: AOAM5317hCSwrMSmhPCR41UO/uu/uKyGgYiXNGEV4OGu+Y3rrw504buX 2HpBAxBZNVhiKsYTWy90S9v/qyiQhy8= X-Google-Smtp-Source: ABdhPJzvSriJLfYQ22y9K8hhEBCL4LBS4shx6hERf4LyGKqaAQLJDsSDutV8Jzt5KdnewvZuNdwl/Q== X-Received: by 2002:adf:dc8b:: with SMTP id r11mr78603595wrj.131.1609707111008; Sun, 03 Jan 2021 12:51:51 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , BALATON Zoltan , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 18/35] vt82c686: Rename superio config related parts Date: Sun, 3 Jan 2021 21:50:04 +0100 Message-Id: <20210103205021.2837760-19-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: BALATON Zoltan Use less confusing naming for superio config register handling related parts that makes it clearer what belongs to this part. Signed-off-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <4d30a2b4b771b2ad651509885daae79d7c4fe7a8.1609584216.git.balato= n@eik.bme.hu> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/isa/vt82c686.c | 48 +++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/hw/isa/vt82c686.c b/hw/isa/vt82c686.c index 2633cfe7dc7..a6f5a0843d0 100644 --- a/hw/isa/vt82c686.c +++ b/hw/isa/vt82c686.c @@ -27,7 +27,7 @@ #include "trace.h" =20 typedef struct SuperIOConfig { - uint8_t config[0x100]; + uint8_t regs[0x100]; uint8_t index; uint8_t data; } SuperIOConfig; @@ -35,23 +35,23 @@ typedef struct SuperIOConfig { struct VT82C686BISAState { PCIDevice dev; MemoryRegion superio; - SuperIOConfig superio_conf; + SuperIOConfig superio_cfg; }; =20 OBJECT_DECLARE_SIMPLE_TYPE(VT82C686BISAState, VT82C686B_ISA) =20 -static void superio_ioport_writeb(void *opaque, hwaddr addr, uint64_t data, - unsigned size) +static void superio_cfg_write(void *opaque, hwaddr addr, uint64_t data, + unsigned size) { - SuperIOConfig *superio_conf =3D opaque; + SuperIOConfig *sc =3D opaque; =20 if (addr =3D=3D 0x3f0) { /* config index register */ - superio_conf->index =3D data & 0xff; + sc->index =3D data & 0xff; } else { bool can_write =3D true; /* 0x3f1, config data register */ - trace_via_superio_write(superio_conf->index, data & 0xff); - switch (superio_conf->index) { + trace_via_superio_write(sc->index, data & 0xff); + switch (sc->index) { case 0x00 ... 0xdf: case 0xe4: case 0xe5: @@ -69,23 +69,23 @@ static void superio_ioport_writeb(void *opaque, hwaddr = addr, uint64_t data, =20 } if (can_write) { - superio_conf->config[superio_conf->index] =3D data & 0xff; + sc->regs[sc->index] =3D data & 0xff; } } } =20 -static uint64_t superio_ioport_readb(void *opaque, hwaddr addr, unsigned s= ize) +static uint64_t superio_cfg_read(void *opaque, hwaddr addr, unsigned size) { - SuperIOConfig *superio_conf =3D opaque; - uint8_t val =3D superio_conf->config[superio_conf->index]; + SuperIOConfig *sc =3D opaque; + uint8_t val =3D sc->regs[sc->index]; =20 - trace_via_superio_read(superio_conf->index, val); + trace_via_superio_read(sc->index, val); return val; } =20 -static const MemoryRegionOps superio_ops =3D { - .read =3D superio_ioport_readb, - .write =3D superio_ioport_writeb, +static const MemoryRegionOps superio_cfg_ops =3D { + .read =3D superio_cfg_read, + .write =3D superio_cfg_write, .endianness =3D DEVICE_NATIVE_ENDIAN, .impl =3D { .min_access_size =3D 1, @@ -112,12 +112,12 @@ static void vt82c686b_isa_reset(DeviceState *dev) pci_conf[0x5f] =3D 0x04; pci_conf[0x77] =3D 0x10; /* GPIO Control 1/2/3/4 */ =20 - s->superio_conf.config[0xe0] =3D 0x3c; - s->superio_conf.config[0xe2] =3D 0x03; - s->superio_conf.config[0xe3] =3D 0xfc; - s->superio_conf.config[0xe6] =3D 0xde; - s->superio_conf.config[0xe7] =3D 0xfe; - s->superio_conf.config[0xe8] =3D 0xbe; + s->superio_cfg.regs[0xe0] =3D 0x3c; /* Device ID */ + s->superio_cfg.regs[0xe2] =3D 0x03; /* Function select */ + s->superio_cfg.regs[0xe3] =3D 0xfc; /* Floppy ctrl base addr */ + s->superio_cfg.regs[0xe6] =3D 0xde; /* Parallel port base addr */ + s->superio_cfg.regs[0xe7] =3D 0xfe; /* Serial port 1 base addr */ + s->superio_cfg.regs[0xe8] =3D 0xbe; /* Serial port 2 base addr */ } =20 /* write config pci function0 registers. PCI-ISA bridge */ @@ -311,8 +311,8 @@ static void vt82c686b_realize(PCIDevice *d, Error **err= p) } } =20 - memory_region_init_io(&s->superio, OBJECT(d), &superio_ops, - &s->superio_conf, "superio", 2); + memory_region_init_io(&s->superio, OBJECT(d), &superio_cfg_ops, + &s->superio_cfg, "superio", 2); memory_region_set_enabled(&s->superio, false); /* * The floppy also uses 0x3f0 and 0x3f1. --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) client-ip=209.85.221.42; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f42.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707117; cv=none; d=zohomail.com; s=zohoarc; b=ldNtDvWInh/1hXFLnTVFAMX7OWjhApasqvRBOVWEqKnvTbjv0GwrPX2u03O/eU9McNucsaknJpuN7BtZ/gtCvamAgSIF0dq8L3P93s6o3nUPjA9BXpL074hjnFD4GwI2t6WUeu5e8PtJ9Y0uc7WJcclrTKu8uhkBP1X1KtBO5uw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707117; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=IdHQJwCqOdYJyKNmtS/fZyUmMRQdfAB5wRMdzdWKipA=; b=kM5Rm1dIrzG89cP1kmLDnRiyCQ91dTZ6wZQ8dtRqUkE5BmBM/LUz/Ayj+e7lMq03raEmZDJN/JgTSFWen+pvvNovJliWlWNqIMTj6pxSDe/MH+YAf0Z09q9OoGS+2MVBmiZGPrXrhJO5NMIiQ5HbCAXOzjnCyC29KZO+9AniUJk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f42.google.com (mail-wr1-f42.google.com [209.85.221.42]) by mx.zohomail.com with SMTPS id 1609707117738470.7466213573772; Sun, 3 Jan 2021 12:51:57 -0800 (PST) Received: by mail-wr1-f42.google.com with SMTP id t16so29478531wra.3 for ; Sun, 03 Jan 2021 12:51:57 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id b200sm30290701wmb.10.2021.01.03.12.51.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:51:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=IdHQJwCqOdYJyKNmtS/fZyUmMRQdfAB5wRMdzdWKipA=; b=HwYHJYDTTT9fz3lggP7dIYTMzsuwzpdQPoIhTRpZt8Odep4aqgeq1M1vCcSGk6BMxN wjpPuYtsgM4u8gSYof+X0cYw045wEGSesiyNvidjKXS1kRLgKCOQXpnVtQUEulVs3d9U yS+FuOoPFm5QtsSTH6m3sKw1ic5mNmv+ngB/d5tPgVctJIEIGubmHvKeuHDkWbPVm4xG MPIVV+E3jZZ/eVjoO+BzDzMo++p+yWgZo8sDEHtQeUpjq8MQrkhQ1hEArvje38I7v3uO 3m3XB27y4gjsgMJcTGmxXI3DYxXwqqpsTvoAkj+NRkIHDJKkmGdeuAl0FluyrlFXNgO5 a5Vw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=IdHQJwCqOdYJyKNmtS/fZyUmMRQdfAB5wRMdzdWKipA=; b=NLHCpRc/BLe2cJ+h5iNBUY19OsdJncyeXzwBPcdBMf9CYAqb2i6ULNbJ7tN9gQC4Ro nJfzRJClTVabTV1xLP66M83tjbceu603x98l8Ur9sabijH4ehmXslbgrLePo51h5SMrh HmY+VUdrLzS3zpWbHsj7FAan8M0yD3KmOjzyhwYZBKk7WLWAzqeKmAMR8fjOpSGtp9P1 amb01tFXumQbyzIryxuTc55tNC/5ZzYVmhaRRy07OkKxHFKggCiSR4YmrXD5upIrKopN mKd1JJFbDArORRqPFMwFvA0KOji8VvV9hXJDsyqUmb+MqFXbY/Y+aCIr5xCqSC3k+u4H jv1A== X-Gm-Message-State: AOAM531PYaLrmUlnxeXe6mJVAgCt+qywrDjnr0hVsvTDK10mZVaqElfB cbR/jkj23ao8lPOT4l3GKyc= X-Google-Smtp-Source: ABdhPJy2/sxQWC+xPi4mr8rRCS85dS9tT/eZzjgYUqI5H2zLe8Uge0RuVlVV21/Ktg5AeHIvhFCewg== X-Received: by 2002:adf:c387:: with SMTP id p7mr76731410wrf.95.1609707115943; Sun, 03 Jan 2021 12:51:55 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Luc Michel , Richard Henderson Subject: [PULL 19/35] clock: Introduce clock_ticks_to_ns() Date: Sun, 3 Jan 2021 21:50:05 +0100 Message-Id: <20210103205021.2837760-20-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Peter Maydell The clock_get_ns() API claims to return the period of a clock in nanoseconds. Unfortunately since it returns an integer and a clock's period is represented in units of 2^-32 nanoseconds, the result is often an approximation, and calculating a clock expiry deadline by multiplying clock_get_ns() by a number-of-ticks is unacceptably inaccurate. Introduce a new API clock_ticks_to_ns() which returns the number of nanoseconds it takes the clock to make a given number of ticks. This function can do the complete calculation internally and will thus give a more accurate result. Signed-off-by: Peter Maydell Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Luc Michel Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201215150929.30311-2-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- docs/devel/clocks.rst | 29 +++++++++++++++++++++++++++++ include/hw/clock.h | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+) diff --git a/docs/devel/clocks.rst b/docs/devel/clocks.rst index e5da28e2111..c2e70e64db1 100644 --- a/docs/devel/clocks.rst +++ b/docs/devel/clocks.rst @@ -258,6 +258,35 @@ Here is an example: clock_get_ns(dev->my_clk_input)); } =20 +Calculating expiry deadlines +---------------------------- + +A commonly required operation for a clock is to calculate how long +it will take for the clock to tick N times; this can then be used +to set a timer expiry deadline. Use the function ``clock_ticks_to_ns()``, +which takes an unsigned 64-bit count of ticks and returns the length +of time in nanoseconds required for the clock to tick that many times. + +It is important not to try to calculate expiry deadlines using a +shortcut like multiplying a "period of clock in nanoseconds" value +by the tick count, because clocks can have periods which are not a +whole number of nanoseconds, and the accumulated error in the +multiplication can be significant. + +For a clock with a very long period and a large number of ticks, +the result of this function could in theory be too large to fit in +a 64-bit value. To avoid overflow in this case, ``clock_ticks_to_ns()`` +saturates the result to INT64_MAX (because this is the largest valid +input to the QEMUTimer APIs). Since INT64_MAX nanoseconds is almost +300 years, anything with an expiry later than that is in the "will +never happen" category. Callers of ``clock_ticks_to_ns()`` should +therefore generally not special-case the possibility of a saturated +result but just allow the timer to be set to that far-future value. +(If you are performing further calculations on the returned value +rather than simply passing it to a QEMUTimer function like +``timer_mod_ns()`` then you should be careful to avoid overflow +in those calculations, of course.) + Changing a clock period ----------------------- =20 diff --git a/include/hw/clock.h b/include/hw/clock.h index 81bcf3e505a..b5fff6ded83 100644 --- a/include/hw/clock.h +++ b/include/hw/clock.h @@ -16,6 +16,8 @@ =20 #include "qom/object.h" #include "qemu/queue.h" +#include "qemu/host-utils.h" +#include "qemu/bitops.h" =20 #define TYPE_CLOCK "clock" OBJECT_DECLARE_SIMPLE_TYPE(Clock, CLOCK) @@ -218,6 +220,45 @@ static inline unsigned clock_get_ns(Clock *clk) return CLOCK_PERIOD_TO_NS(clock_get(clk)); } =20 +/** + * clock_ticks_to_ns: + * @clk: the clock to query + * @ticks: number of ticks + * + * Returns the length of time in nanoseconds for this clock + * to tick @ticks times. Because a clock can have a period + * which is not a whole number of nanoseconds, it is important + * to use this function when calculating things like timer + * expiry deadlines, rather than attempting to obtain a "period + * in nanoseconds" value and then multiplying that by a number + * of ticks. + * + * The result could in theory be too large to fit in a 64-bit + * value if the number of ticks and the clock period are both + * large; to avoid overflow the result will be saturated to INT64_MAX + * (because this is the largest valid input to the QEMUTimer APIs). + * Since INT64_MAX nanoseconds is almost 300 years, anything with + * an expiry later than that is in the "will never happen" category + * and callers can reasonably not special-case the saturated result. + */ +static inline uint64_t clock_ticks_to_ns(const Clock *clk, uint64_t ticks) +{ + uint64_t ns_low, ns_high; + + /* + * clk->period is the period in units of 2^-32 ns, so + * (clk->period * ticks) is the required length of time in those + * units, and we can convert to nanoseconds by multiplying by + * 2^32, which is the same as shifting the 128-bit multiplication + * result right by 32. + */ + mulu64(&ns_low, &ns_high, clk->period, ticks); + if (ns_high & MAKE_64BIT_MASK(31, 33)) { + return INT64_MAX; + } + return ns_low >> 32 | ns_high << 32; +} + /** * clock_is_enabled: * @clk: a clock --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.51 as permitted sender) client-ip=209.85.128.51; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f51.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.51 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707122; cv=none; d=zohomail.com; s=zohoarc; b=D9svp5dLo1Wn/ZMo2ZBUsACrn6vwd4X9uPyesg37lg7P+gqgzoA4rNCweUmqTOFlU5tI6rogoN4kIc3rI00YDFX6KcRLJPUDJKxYkAAYZ3aaIxBR2JOurdLltnfmJL3/ev5xTYkSfuhmWN1RknR4sT/wCKfaESNCz5EhcplfuMU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707122; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ONmR7DvST/KHwvIMlpQESaWh+hvboxmRkL03nu+T/uM=; b=hkC4P5tGgKUxB8k5whlyG4Ot57IJNI5ueRBSwVq1f0TyBDGHo8ZZaHRx6mkRee1wZTyrNQHBYWuXKTlOvvP8qm5CPCEVeS8NUC/4k/a+8Kc5BjC9TDbbfy6UTwvyw8YqDsmZdnp/pAR1xTeBIZAcGo66dnxCjv6Tmkv1S8i7l14= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.51 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) by mx.zohomail.com with SMTPS id 1609707122361240.8694306860865; Sun, 3 Jan 2021 12:52:02 -0800 (PST) Received: by mail-wm1-f51.google.com with SMTP id v14so15939491wml.1 for ; Sun, 03 Jan 2021 12:52:01 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id r1sm90034783wrl.95.2021.01.03.12.51.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ONmR7DvST/KHwvIMlpQESaWh+hvboxmRkL03nu+T/uM=; b=HEzjlMV5Y+TSG3Oz+s7DHMSoie7zxoE+rmiD6vVzX8Sjr/g2KwEUVjmXFLtt3JWG5Y H/HCUC7sRl7fkS05Rpt/aYf5sWridbt/Y3Ddqfln5eYvVTLYDfh2jGAi5LwH2nt53thq 6LfSkwIKUC5Ze1sSQ63zY9+9+fXlBwlX2l/123ad1Vy9mWW1xdnHR6CG2o0AIoAxVHNN r44p7HuA+UQnIEw1qtwhjeIFziqoko/2w8S9cDXQAhOvqLgTiUHtbvRDLMZx4DckrQYF LqPL/ljscRyBcibzVx20bGEkDLj4GQ82RPJU6kWZj6Ad7y9dhn4/7KEQ0ksGf9/ri7Hn gAIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ONmR7DvST/KHwvIMlpQESaWh+hvboxmRkL03nu+T/uM=; b=nLDZdA8PUpC67m5DKtDOlH1RjFsRs6GdV87waIiOV4D+FsJsFH4Mwcw0z+3CqKRTyA qpj3Oagxr/IQox9lgFGC4MgMgJsdup6iiGrHlJ4RbjYy3dE7e+22Tfevc4iUmjwp/Vfi U5zdi6cvWDyz2CNozQI5Bxs9udUMNkTMRWb/poLbb4lqTCegHL4GJviXxMoaC0mdtgE6 RIZIfM4RsHe9GBWUl12nJ8zhYRg5EXeOwoWIbyloEDdxVYZKDE3GYifON7peosadQIrE eoLe07iCrh+RqUxRlSR2gpeez2aGTKoJXjM/L6aji9ZQVJi/UtXhdvfLu7pvCMujFFYi VwQQ== X-Gm-Message-State: AOAM530YsbTokE25KHauVNp6tpNj5VLQxPr7gkzm2zbeSYYuDYfPLCQE YV/VdZIA3ZLOvL2T5gJiBS4= X-Google-Smtp-Source: ABdhPJxASIbbNb4+M6YMd98+8a7g00xjJoE0JcK5zEjgPr7OMHygC+mFDfTHHgJSVmi5Ry8f/ZLIPA== X-Received: by 2002:a1c:9949:: with SMTP id b70mr23702785wme.72.1609707120644; Sun, 03 Jan 2021 12:52:00 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson , Luc Michel Subject: [PULL 20/35] target/mips: Don't use clock_get_ns() in clock period calculation Date: Sun, 3 Jan 2021 21:50:06 +0100 Message-Id: <20210103205021.2837760-21-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Peter Maydell Currently the MIPS code uses the old clock_get_ns() API to calculate a time length in nanoseconds: cpu->cp0_count_rate * clock_get_ns(MIPS_CPU(cpu)->clock) This relies on the clock having a period which is an exact number of nanoseconds. Switch to the new clock_ticks_to_ns() function, which does the multiplication internally at a higher precision. Signed-off-by: Peter Maydell Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Reviewed-by: Luc Michel Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201215150929.30311-3-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- target/mips/cpu.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/target/mips/cpu.c b/target/mips/cpu.c index b2cd69ff7f9..2283214c879 100644 --- a/target/mips/cpu.c +++ b/target/mips/cpu.c @@ -380,8 +380,8 @@ static void mips_cp0_period_set(MIPSCPU *cpu) { CPUMIPSState *env =3D &cpu->env; =20 - env->cp0_count_ns =3D cpu->cp0_count_rate - * clock_get_ns(MIPS_CPU(cpu)->clock); + env->cp0_count_ns =3D clock_ticks_to_ns(MIPS_CPU(cpu)->clock, + cpu->cp0_count_rate); assert(env->cp0_count_ns); } =20 --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.44 as permitted sender) client-ip=209.85.221.44; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f44.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.44 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1609707127; cv=none; d=zohomail.com; s=zohoarc; b=X4cJFEST0eU8fFK2/McuUMyRKZq6jL2eTa7CIDk7co5pOIvZ5U9lyqtuLtswfT/I5Ai/1uhijIs9Irn8lxL3IgoTZJtteTXshjcC/0RmbC2dWwCQyyBK1nNZNgEn70lHmt2wpEbfOYraSTxKwZnMItb7obvDlKUhmk+V4Va3XSk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707127; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=DdsNLET2BpxdZf8VQjwnKxo9S8h71JuQHMRBO6qs7tI=; b=mAT6W2sYhwSlUmMP2JivNlGyV4YJnR/iudAqA1TsG3WsxoXj92/4MNjkytNKEr+MQ/TlTwJP2ZLyaSP/3mcl7yreeoKCquZgfzuqNeVPSl2cYGKAueB/3bWg1HGg+EmdlLmTgJydJWiX5dhwGIFTLz0bF13S8m4Q34UyUtnBWlg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.44 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wr1-f44.google.com (mail-wr1-f44.google.com [209.85.221.44]) by mx.zohomail.com with SMTPS id 1609707127153161.8417768210611; Sun, 3 Jan 2021 12:52:07 -0800 (PST) Received: by mail-wr1-f44.google.com with SMTP id y17so29463749wrr.10 for ; Sun, 03 Jan 2021 12:52:06 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id r1sm90035030wrl.95.2021.01.03.12.52.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=DdsNLET2BpxdZf8VQjwnKxo9S8h71JuQHMRBO6qs7tI=; b=rBSEI6xmzmEpa53fx2l9KF0RZUTeHaXoiSr1fzEnbG+9ZgJe3fOihKUjOjqA9OdJ5j +lAvPncHXgRryST94UdsBHD5f+10TgjJlP0mU+KPwQg8J3w8M+f19sym51AHhU+yla3A ZIad6XT26v5k+dtoqBth2UKRhjBCupZkhikCaTRbD6BV8caBiy9nXDWtQVTrAWqMahr3 WH6YKZV/Puum4R5yo31Ezv7XShU+Lc/HCjMmonhok9SFIef91KzmQ5wF4Sqa1UJEDsf0 BPYi4XxzUa4EpohXLrUhDRBdHnEgZCF3wZkH73Od0xrqKziLUsjrU7Q7E5aqu4oMQv7N ZE4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=DdsNLET2BpxdZf8VQjwnKxo9S8h71JuQHMRBO6qs7tI=; b=suGJ+fYukbHNMcHRqfED5Fd8RtW60wb6l6ohCk92NqUXXGEuNLMQwyoshKKrbWoGKI 7uZ56CfurCDEBQ6emRRGgQxEffuBwwbJysWTmACTfc8u5WpJpehuP/ipEwhjSd2QfljN Jn/xzL9JtKqyGMfGsPgMgHGJ9yvVcSWH7SjItpnLblKCAVzKsL1SV9LRL09MmLp1QyIT Yt98QFHEDqBYe92Zxdjy7AgXC4/VcOAnSz8efduFnG2rYquxHvJeAgwFzT0iuwBBUyG1 8C2bTC7rDw0wVHfIyGUdEv36s8Q0ecTqBES3FlxKEyLH592TLBrEY+jfWkdhS1CE4GCN kjdQ== X-Gm-Message-State: AOAM533++i286yzK4hT5YC/EcY+CgPxknoqVEMBToNe4zSTLOanWD7gW 58S+zAXbFB015jfceqwiIdE= X-Google-Smtp-Source: ABdhPJwBpYDrq9QOVlUU5Z8NuwmE3g2+SXAX1pjeER5y8ZboANiZ+YfjcSvtGB3LV4QjJKgJ6IAtEQ== X-Received: by 2002:a5d:528a:: with SMTP id c10mr69994916wrv.117.1609707125359; Sun, 03 Jan 2021 12:52:05 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson , Luc Michel Subject: [PULL 21/35] clock: Remove clock_get_ns() Date: Sun, 3 Jan 2021 21:50:07 +0100 Message-Id: <20210103205021.2837760-22-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Peter Maydell Remove the now-unused clock_get_ns() API and the CLOCK_PERIOD_TO_NS() macro that only it was using. Signed-off-by: Peter Maydell Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Reviewed-by: Luc Michel Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201215150929.30311-4-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- docs/devel/clocks.rst | 17 +++++++++++++---- include/hw/clock.h | 6 ------ 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/docs/devel/clocks.rst b/docs/devel/clocks.rst index c2e70e64db1..2d317ff32f2 100644 --- a/docs/devel/clocks.rst +++ b/docs/devel/clocks.rst @@ -238,8 +238,17 @@ object during device instance init. For example: Fetching clock frequency/period ------------------------------- =20 -To get the current state of a clock, use the functions ``clock_get()``, -``clock_get_ns()`` or ``clock_get_hz()``. +To get the current state of a clock, use the functions ``clock_get()`` +or ``clock_get_hz()``. + +``clock_get()`` returns the period of the clock in its fully precise +internal representation, as an unsigned 64-bit integer in units of +2^-32 nanoseconds. (For many purposes ``clock_ticks_to_ns()`` will +be more convenient; see the section below on expiry deadlines.) + +``clock_get_hz()`` returns the frequency of the clock, rounded to the +next lowest integer. This implies some inaccuracy due to the rounding, +so be cautious about using it in calculations. =20 It is also possible to register a callback on clock frequency changes. Here is an example: @@ -254,8 +263,8 @@ Here is an example: */ =20 /* do something with the new period */ - fprintf(stdout, "device new period is %" PRIu64 "ns\n", - clock_get_ns(dev->my_clk_input)); + fprintf(stdout, "device new period is %" PRIu64 "* 2^-32 ns\n", + clock_get(dev->my_clk_input)); } =20 Calculating expiry deadlines diff --git a/include/hw/clock.h b/include/hw/clock.h index b5fff6ded83..852c636961e 100644 --- a/include/hw/clock.h +++ b/include/hw/clock.h @@ -40,7 +40,6 @@ typedef void ClockCallback(void *opaque); * macro helpers to convert to hertz / nanosecond */ #define CLOCK_PERIOD_FROM_NS(ns) ((ns) * (CLOCK_PERIOD_1SEC / 1000000000ll= u)) -#define CLOCK_PERIOD_TO_NS(per) ((per) / (CLOCK_PERIOD_1SEC / 1000000000ll= u)) #define CLOCK_PERIOD_FROM_HZ(hz) (((hz) !=3D 0) ? CLOCK_PERIOD_1SEC / (hz)= : 0u) #define CLOCK_PERIOD_TO_HZ(per) (((per) !=3D 0) ? CLOCK_PERIOD_1SEC / (per= ) : 0u) =20 @@ -215,11 +214,6 @@ static inline unsigned clock_get_hz(Clock *clk) return CLOCK_PERIOD_TO_HZ(clock_get(clk)); } =20 -static inline unsigned clock_get_ns(Clock *clk) -{ - return CLOCK_PERIOD_TO_NS(clock_get(clk)); -} - /** * clock_ticks_to_ns: * @clk: the clock to query --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) client-ip=209.85.128.42; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f42.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707132; cv=none; d=zohomail.com; s=zohoarc; b=HkYRLILmlNp9H1p2KmP6ENRs7mOYTjie9SiB9zQHT71q9VRxv4nWg+dj789vxUwlCSVaVS01loe/Vdzflr9D9SPw10GIOCvb2toKB8gfNK6mvkhyf5dN3p+uAPzmJtDmO6LquvLcciFxEH5Le0nbYE1xylKhV18Hl61DLjC6wf0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707132; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=S5HsQlYCUdheC9WapV12I7REW2HWT9Eel8KOz7tCI0c=; b=CFf+Lce4AM1kmyLoRN51lPUGE6iqJfm5JXzRYES7nEcZ1nZ5GPUHi/HPn/zXWkJFqoB0R3h7S1+l2TtvZ5slDMfmMn7msgUi/2OKIz8i5u58mA0MYKHBP1MGFIHX7Rq4PvpM0906o2iMCWfR2+v9Z4uH3+MxO/KHXETxabcHMsE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) by mx.zohomail.com with SMTPS id 1609707132061992.0554966086854; Sun, 3 Jan 2021 12:52:12 -0800 (PST) Received: by mail-wm1-f42.google.com with SMTP id 3so16641723wmg.4 for ; Sun, 03 Jan 2021 12:52:11 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id g5sm85018363wro.60.2021.01.03.12.52.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=S5HsQlYCUdheC9WapV12I7REW2HWT9Eel8KOz7tCI0c=; b=Q9sViTLFYRhYMAAbN8Cn4mDn+uY5yzyxxGNl/LjYddodG4eLWGGsu6tEaaiHgaUxKV CaAWQHJPTbzzWRaNZsOBCZ1ERF7txS8dedr3q0d4RZwVLOZiVYR6MEDtdUMmIn4zAJGB eRWKuFGGIzTzKUt768P2SjYrI861/L7rr4tbzzz4Po1YYCANHwi2v210K52gHoVHWSkp bJIBOjLOrVJCCiOS8SaIVVJase97JURDngN6bF5faaj20E6Ks2eDB3KTuQpNIwBj1ksk rKEho9y4hZfE90rQwuV42/9n++/dGQ+Ae96JxiGw1856HiXjPbS1qTAwJ8FsjsOHGrHL 9ADg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=S5HsQlYCUdheC9WapV12I7REW2HWT9Eel8KOz7tCI0c=; b=hoCCmuM1Fxp+Z1AhBK3y7QghYbyu/8Q9Onrp0BgXan50gTnmwratQwdOauzf0ygzC/ Be1ZStxDYeFh5MYWrU01hOaslJ6cTKlilYU3wO+Co1EnAihSUJCDTsY8YAVBYjx2kPtW yVDU/sl0oocSUuIOi8X7X3NXmC4Ag0VEhcPXpo5pd50gJKIISiwGwv/2LnenkXKlD6Ay q2R3XL2d30OccuGP4nt4wc50jax5+mxBxkO+4Np+AsnDLwjypujUvLHTIHS0sEjhTkRh iKDV6Q/mVpDl38rPMT6pffZwh0q9k1UiPMAvqXCC6bibf9ggLMd8qV0+ERtdopukn4PS HvlQ== X-Gm-Message-State: AOAM530+nIjNj/kbL8bUYAPElgqWQIwMq67EHFCUpt5sn50A+TL96xaf /foVKh3kXRtaCbdW5iX/ZEJhIk+JHWk= X-Google-Smtp-Source: ABdhPJwErC5L6MiANUu0xARI9uwlt37n/DW206JgJzDU+QfAGziyfib0zaJvpPTQuHCAdn94IAD3vw== X-Received: by 2002:a1c:2b05:: with SMTP id r5mr23732194wmr.179.1609707130251; Sun, 03 Jan 2021 12:52:10 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson , Luc Michel Subject: [PULL 22/35] clock: Define and use new clock_display_freq() Date: Sun, 3 Jan 2021 21:50:08 +0100 Message-Id: <20210103205021.2837760-23-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Peter Maydell It's common to want to print a human-readable indication of a clock's frequency. Provide a utility function in the clock API to return a string which is a displayable representation of the frequency, and use it in qdev-monitor.c. Before: (qemu) info qtree [...] dev: xilinx,zynq_slcr, id "" clock-in "ps_clk" freq_hz=3D3.333333e+07 mmio 00000000f8000000/0000000000001000 After: dev: xilinx,zynq_slcr, id "" clock-in "ps_clk" freq_hz=3D33.3 MHz mmio 00000000f8000000/0000000000001000 Signed-off-by: Peter Maydell Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Reviewed-by: Luc Michel Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201215150929.30311-5-peter.maydell@linaro.org> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- docs/devel/clocks.rst | 5 +++++ include/hw/clock.h | 12 ++++++++++++ hw/core/clock.c | 6 ++++++ softmmu/qdev-monitor.c | 6 +++--- 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/docs/devel/clocks.rst b/docs/devel/clocks.rst index 2d317ff32f2..2548d842322 100644 --- a/docs/devel/clocks.rst +++ b/docs/devel/clocks.rst @@ -267,6 +267,11 @@ Here is an example: clock_get(dev->my_clk_input)); } =20 +If you are only interested in the frequency for displaying it to +humans (for instance in debugging), use ``clock_display_freq()``, +which returns a prettified string-representation, e.g. "33.3 MHz". +The caller must free the string with g_free() after use. + Calculating expiry deadlines ---------------------------- =20 diff --git a/include/hw/clock.h b/include/hw/clock.h index 852c636961e..6382f346569 100644 --- a/include/hw/clock.h +++ b/include/hw/clock.h @@ -264,4 +264,16 @@ static inline bool clock_is_enabled(const Clock *clk) return clock_get(clk) !=3D 0; } =20 +/** + * clock_display_freq: return human-readable representation of clock frequ= ency + * @clk: clock + * + * Return a string which has a human-readable representation of the + * clock's frequency, e.g. "33.3 MHz". This is intended for debug + * and display purposes. + * + * The caller is responsible for freeing the string with g_free(). + */ +char *clock_display_freq(Clock *clk); + #endif /* QEMU_HW_CLOCK_H */ diff --git a/hw/core/clock.c b/hw/core/clock.c index 8c6af223e7c..76b5f468b6e 100644 --- a/hw/core/clock.c +++ b/hw/core/clock.c @@ -12,6 +12,7 @@ */ =20 #include "qemu/osdep.h" +#include "qemu/cutils.h" #include "hw/clock.h" #include "trace.h" =20 @@ -111,6 +112,11 @@ static void clock_disconnect(Clock *clk) QLIST_REMOVE(clk, sibling); } =20 +char *clock_display_freq(Clock *clk) +{ + return freq_to_str(clock_get_hz(clk)); +} + static void clock_initfn(Object *obj) { Clock *clk =3D CLOCK(obj); diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c index 2c57e36c9ae..8dc656becca 100644 --- a/softmmu/qdev-monitor.c +++ b/softmmu/qdev-monitor.c @@ -736,11 +736,11 @@ static void qdev_print(Monitor *mon, DeviceState *dev= , int indent) } } QLIST_FOREACH(ncl, &dev->clocks, node) { - qdev_printf("clock-%s%s \"%s\" freq_hz=3D%e\n", + g_autofree char *freq_str =3D clock_display_freq(ncl->clock); + qdev_printf("clock-%s%s \"%s\" freq_hz=3D%s\n", ncl->output ? "out" : "in", ncl->alias ? " (alias)" : "", - ncl->name, - CLOCK_PERIOD_TO_HZ(1.0 * clock_get(ncl->clock))); + ncl->name, freq_str); } class =3D object_get_class(OBJECT(dev)); do { --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) client-ip=209.85.128.42; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f42.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707136; cv=none; d=zohomail.com; s=zohoarc; b=aFwl6K1mGgHlEWRA+YlSuuKLd+KbNXik1Tb+tUazSnlZNiEms0VJsmS2F3A/F6O7UMjletpj/nczY9k/h++D69EYfgueGUgR3RwFYdHNnhiQ8GEgTMves5F8YbU7ivFhVWw5Kk+6N7u1bvH8sDm5SnsY28sUTuaDs9Mx+xjPuug= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707136; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ojhC/M+0W8vFwZN1jjIy9RKgtD0KzrFoNNVj6x+2kmE=; b=UobJYwXQo7L1YdhiZ16rao91xULCY6t1LbCxyI4DwQ7psNJFM8JsNuGA4vezDxgIuGhvWJlMSElwev7crN6vWIc7j/1VAymC+iMccU2cd6QdS7IvVSfqMwYW7kk6cgdz049uxuO0KkrTJd4veJvpv1sCjU4TKYdHmIYuEBdiMps= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) by mx.zohomail.com with SMTPS id 1609707136912330.7337316989615; Sun, 3 Jan 2021 12:52:16 -0800 (PST) Received: by mail-wm1-f42.google.com with SMTP id e25so16678804wme.0 for ; Sun, 03 Jan 2021 12:52:16 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id 189sm29798832wma.22.2021.01.03.12.52.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ojhC/M+0W8vFwZN1jjIy9RKgtD0KzrFoNNVj6x+2kmE=; b=k3yfD31dKhRgHTGcfJ1GMORS+vCW0IevfCtv9z66HDRS8DK/luFRPLcQ3H9+AmlUTO Aj/+UHO50rye36TDJwlL40YpEynVrrTYKJWa+YIZlAFT2N21PRSWJM1x4yDGtms6cLJP IrJJdY2s3L77ZpDWfTVvITM5QajHDo/WkjajtVQeTXb382G/Bh4Ckb8DIQ+xvul5pIVg YygTtSHXViUqrjqqigV9/8KJszQeZo3oH1Lm8xmGIz183MzD5NvPOFlJBE5p1vwHFVNL sJSFSQp8rH5JHsLSXRTd/hYDvCA7EoxOyoSYKparqTda4/oVDafr1/rCYvM9fftB6QML khvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ojhC/M+0W8vFwZN1jjIy9RKgtD0KzrFoNNVj6x+2kmE=; b=SGJD7rAuOsJ+mPtQmNmGUgkYcnOyXWN7BC/xMRuCuyMZteuuTbvN/XKNsH79XnLSQG CccB63ddqOYyInIBkt3IKvmgbQdUady5gEFhRgnZasi3NovmblQWYchs2nb6UrobGa1g SVqx1jVqPvj5mfwliQoHgozi+6bgMwguutP6xKWiiiJnWWkm6zSfYaBpOgtCEgawRb9X g2VeTTJSfj+6zB6QDiI8xyiYdWfu5fdBhuPI3Y9E7TzEpk9bSPZiwmsQMXBjlrEZdbOm GuNLSZIUXewtReoqoHpi+BAQK15i4AfEu/b1eYINYljIVqoRZA4J7fxtMm//Icnv/7S5 NrVg== X-Gm-Message-State: AOAM531I18LcfXviKC145PNBtU6AYAzcbRWRpHBsLqJMvASJkp+GjlEv LmlsGIZ51ayEXCbIoIZJ0LM= X-Google-Smtp-Source: ABdhPJwPdUDC+//PKGaxDb41MsBnWOxRLO+GFYvtRxSYbSm1ZL7E7SdfZzErWCXNuS+U1H2pPWhxjg== X-Received: by 2002:a05:600c:2188:: with SMTP id e8mr24393409wme.182.1609707135117; Sun, 03 Jan 2021 12:52:15 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 23/35] hw/intc: Rework Loongson LIOINTC Date: Sun, 3 Jan 2021 21:50:09 +0100 Message-Id: <20210103205021.2837760-24-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Huacai Chen As suggested by Philippe Mathieu-Daud=C3=A9, rework Loongson's liointc: 1, Move macro definitions to loongson_liointc.h; 2, Remove magic values and use macros instead; 3, Replace dead D() code by trace events. Suggested-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Huacai Chen Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201221110538.3186646-2-chenhuacai@kernel.org> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/hw/intc/loongson_liointc.h | 22 ++++++++++++++++++ hw/intc/loongson_liointc.c | 36 +++++++++++++----------------- 2 files changed, 38 insertions(+), 20 deletions(-) create mode 100644 include/hw/intc/loongson_liointc.h diff --git a/include/hw/intc/loongson_liointc.h b/include/hw/intc/loongson_= liointc.h new file mode 100644 index 00000000000..848e65eb359 --- /dev/null +++ b/include/hw/intc/loongson_liointc.h @@ -0,0 +1,22 @@ +/* + * This file is subject to the terms and conditions of the GNU General Pub= lic + * License. See the file "COPYING" in the main directory of this archive + * for more details. + * + * Copyright (c) 2020 Huacai Chen + * Copyright (c) 2020 Jiaxun Yang + * + */ + +#ifndef LOONGSON_LIOINTC_H +#define LOONGSON_LIOINTC_H + +#include "qemu/units.h" +#include "hw/sysbus.h" +#include "qom/object.h" + +#define TYPE_LOONGSON_LIOINTC "loongson.liointc" +DECLARE_INSTANCE_CHECKER(struct loongson_liointc, LOONGSON_LIOINTC, + TYPE_LOONGSON_LIOINTC) + +#endif /* LOONGSON_LIOINTC_H */ diff --git a/hw/intc/loongson_liointc.c b/hw/intc/loongson_liointc.c index fbbfb57ee9c..f823d484e08 100644 --- a/hw/intc/loongson_liointc.c +++ b/hw/intc/loongson_liointc.c @@ -1,6 +1,7 @@ /* * QEMU Loongson Local I/O interrupt controler. * + * Copyright (c) 2020 Huacai Chen * Copyright (c) 2020 Jiaxun Yang * * This program is free software: you can redistribute it and/or modify @@ -19,13 +20,11 @@ */ =20 #include "qemu/osdep.h" -#include "hw/sysbus.h" #include "qemu/module.h" +#include "qemu/log.h" #include "hw/irq.h" #include "hw/qdev-properties.h" -#include "qom/object.h" - -#define D(x) +#include "hw/intc/loongson_liointc.h" =20 #define NUM_IRQS 32 =20 @@ -40,13 +39,10 @@ #define R_IEN 0x24 #define R_IEN_SET 0x28 #define R_IEN_CLR 0x2c -#define R_PERCORE_ISR(x) (0x40 + 0x8 * x) +#define R_ISR_SIZE 0x8 +#define R_START 0x40 #define R_END 0x64 =20 -#define TYPE_LOONGSON_LIOINTC "loongson.liointc" -DECLARE_INSTANCE_CHECKER(struct loongson_liointc, LOONGSON_LIOINTC, - TYPE_LOONGSON_LIOINTC) - struct loongson_liointc { SysBusDevice parent_obj; =20 @@ -123,14 +119,13 @@ liointc_read(void *opaque, hwaddr addr, unsigned int = size) goto out; } =20 - /* Rest is 4 byte */ + /* Rest are 4 bytes */ if (size !=3D 4 || (addr % 4)) { goto out; } =20 - if (addr >=3D R_PERCORE_ISR(0) && - addr < R_PERCORE_ISR(NUM_CORES)) { - int core =3D (addr - R_PERCORE_ISR(0)) / 8; + if (addr >=3D R_START && addr < R_END) { + int core =3D (addr - R_START) / R_ISR_SIZE; r =3D p->per_core_isr[core]; goto out; } @@ -147,7 +142,8 @@ liointc_read(void *opaque, hwaddr addr, unsigned int si= ze) } =20 out: - D(qemu_log("%s: size=3D%d addr=3D%lx val=3D%x\n", __func__, size, addr= , r)); + qemu_log_mask(CPU_LOG_INT, "%s: size=3D%d, addr=3D%"HWADDR_PRIx", val= =3D%x\n", + __func__, size, addr, r); return r; } =20 @@ -158,7 +154,8 @@ liointc_write(void *opaque, hwaddr addr, struct loongson_liointc *p =3D opaque; uint32_t value =3D val64; =20 - D(qemu_log("%s: size=3D%d, addr=3D%lx val=3D%x\n", __func__, size, add= r, value)); + qemu_log_mask(CPU_LOG_INT, "%s: size=3D%d, addr=3D%"HWADDR_PRIx", val= =3D%x\n", + __func__, size, addr, value); =20 /* Mapper is 1 byte */ if (size =3D=3D 1 && addr < R_MAPPER_END) { @@ -166,14 +163,13 @@ liointc_write(void *opaque, hwaddr addr, goto out; } =20 - /* Rest is 4 byte */ + /* Rest are 4 bytes */ if (size !=3D 4 || (addr % 4)) { goto out; } =20 - if (addr >=3D R_PERCORE_ISR(0) && - addr < R_PERCORE_ISR(NUM_CORES)) { - int core =3D (addr - R_PERCORE_ISR(0)) / 8; + if (addr >=3D R_START && addr < R_END) { + int core =3D (addr - R_START) / R_ISR_SIZE; p->per_core_isr[core] =3D value; goto out; } @@ -224,7 +220,7 @@ static void loongson_liointc_init(Object *obj) } =20 memory_region_init_io(&p->mmio, obj, &pic_ops, p, - "loongson.liointc", R_END); + TYPE_LOONGSON_LIOINTC, R_END); sysbus_init_mmio(SYS_BUS_DEVICE(obj), &p->mmio); } =20 --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) client-ip=209.85.128.47; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f47.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707141; cv=none; d=zohomail.com; s=zohoarc; b=iLuGCWCZpXeB6yorkI8lBoVIlvgeNtdZKZ/JUVJDrVqxNj+w2asEzR+W7n+58ReFuXOIRM+fNJTANVirQxf0k3iNWd9MS7oslpn97Kt90OsTr3G6/k0kZKPjywwdgcE/lsi8LsYj/8Y2ceqF2XSMKhxCFaJjmu4yyp+Ex+EgKXY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707141; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+YR78/DI/zhbyQEiorzjQWihYyclw/vAey+LLLhqz3U=; b=kgYcj8hcfP7fHwJbV8mr5b6zS5miE955QMPXXpI5F8A37xc3s64w9Nhpwjb7ylLNUlXOUb81POry9y7Y8MOazL9wvfanYUgJpl/2SxCBKPLrSAEtUYPEzdK2S8xJY8FO8RiEbxzTEcSiFofK23HVgkwa6OoDvV3joSUSd1k737k= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) by mx.zohomail.com with SMTPS id 1609707141606789.0354077495701; Sun, 3 Jan 2021 12:52:21 -0800 (PST) Received: by mail-wm1-f47.google.com with SMTP id g185so16658356wmf.3 for ; Sun, 03 Jan 2021 12:52:21 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id a62sm30534517wmf.7.2021.01.03.12.52.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=+YR78/DI/zhbyQEiorzjQWihYyclw/vAey+LLLhqz3U=; b=QMpHhP1au0ADhTZt4oNXMyqjY6kxlTyVgwlV9PvlS1FbJO5g8UYfehIq5Ts7RJCAu1 JBqYQY4tT+u1N+NYTtWshb1oJAjypEtkFpYCZWW4sWSwrVZXUWeWY0hYsgE6849hWcJd U6c5/11SgEoZ7KPVhOV2sq/ygkVtSDhFHZZQJ5x1+jPKLhr/sY8PY7SR89qrSYPtkUf/ 7Gs5bcGPXnxOLT2Xf01BPxVW/q8g7n1piezf5G5NgufsGxMSwH3gvI06dB8JpXCaUOuT 83zzUCyLUJLWb1xiC2g4LaXlsL0DdXAtTzwXgNTwfP+/tF6qXHMW/keYaES4rh0Gh1SK h1XQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=+YR78/DI/zhbyQEiorzjQWihYyclw/vAey+LLLhqz3U=; b=qACLS0F2dwVpwWlyYcQ4IZ060uVPCNznybczkJh8ufGqD8nFbgIw4EsGorsbGRx3NS cPVIWkE0DynG5qv9yKWbUgqJt/3tZspGWnDI8KMbRH8N16UmtVRJEQ7IoE92jUMiyzxk XDIqtEhifN5N/WGWS+xMe6HIckyd2Lhhix7QcPq81GoKH3910ZmwxUSH6nHONxOZteta I+X5R7aP3vhGp3Zpc2wsrjQjiNXOqzv8vrs/+bEBkS2icV39QyJJk3X4h2OCV66v49SC Mr1CmsAYELzWGIoGy6ZI6qMuaTbGQybQtZuv0UImmIRoWirIP94SnBouzISkqwHKUNDb f72Q== X-Gm-Message-State: AOAM532zZPHii0zwOX3xYAuvziOGSrRzOU+KXuK2UTk22QSF9y5T3GQt fcJ4+ya3jOL6RSkA0M415Yw= X-Google-Smtp-Source: ABdhPJxCz4p4d74u/c2ZDk8nKSx9qWtWmV58MtnlRI0uNvflJntf8j1LFyjvb65lsSNNeCVO8+zdmQ== X-Received: by 2002:a1c:356:: with SMTP id 83mr24961640wmd.31.1609707139861; Sun, 03 Jan 2021 12:52:19 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 24/35] hw/mips: Implement fw_cfg_arch_key_name() Date: Sun, 3 Jan 2021 21:50:10 +0100 Message-Id: <20210103205021.2837760-25-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Huacai Chen Implement fw_cfg_arch_key_name(), which returns the name of a mips-specific key. Co-developed-by: Jiaxun Yang Signed-off-by: Huacai Chen Signed-off-by: Jiaxun Yang Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201221110538.3186646-3-chenhuacai@kernel.org> [PMD: Add FW_CFG_MIPS Kconfig selector] Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/mips/fw_cfg.h | 19 +++++++++++++++++++ hw/mips/fw_cfg.c | 35 +++++++++++++++++++++++++++++++++++ hw/mips/Kconfig | 3 +++ hw/mips/meson.build | 1 + 4 files changed, 58 insertions(+) create mode 100644 hw/mips/fw_cfg.h create mode 100644 hw/mips/fw_cfg.c diff --git a/hw/mips/fw_cfg.h b/hw/mips/fw_cfg.h new file mode 100644 index 00000000000..e317d5b9a3e --- /dev/null +++ b/hw/mips/fw_cfg.h @@ -0,0 +1,19 @@ +/* + * QEMU fw_cfg helpers (MIPS specific) + * + * Copyright (c) 2020 Huacai Chen + * + * SPDX-License-Identifier: MIT + */ + +#ifndef HW_MIPS_FW_CFG_H +#define HW_MIPS_FW_CFG_H + +#include "hw/boards.h" +#include "hw/nvram/fw_cfg.h" + +/* Data for BIOS to identify machine */ +#define FW_CFG_MACHINE_VERSION (FW_CFG_ARCH_LOCAL + 0) +#define FW_CFG_CPU_FREQ (FW_CFG_ARCH_LOCAL + 1) + +#endif diff --git a/hw/mips/fw_cfg.c b/hw/mips/fw_cfg.c new file mode 100644 index 00000000000..67c4a74f4be --- /dev/null +++ b/hw/mips/fw_cfg.c @@ -0,0 +1,35 @@ +/* + * QEMU fw_cfg helpers (MIPS specific) + * + * Copyright (c) 2020 Lemote, Inc. + * + * Author: + * Huacai Chen (chenhc@lemote.com) + * + * SPDX-License-Identifier: GPL-2.0-or-later + * + * This work is licensed under the terms of the GNU GPL, version 2 or late= r. + * See the COPYING file in the top-level directory. + */ + +#include "qemu/osdep.h" +#include "hw/mips/fw_cfg.h" +#include "hw/nvram/fw_cfg.h" + +const char *fw_cfg_arch_key_name(uint16_t key) +{ + static const struct { + uint16_t key; + const char *name; + } fw_cfg_arch_wellknown_keys[] =3D { + {FW_CFG_MACHINE_VERSION, "machine_version"}, + {FW_CFG_CPU_FREQ, "cpu_frequency"}, + }; + + for (size_t i =3D 0; i < ARRAY_SIZE(fw_cfg_arch_wellknown_keys); i++) { + if (fw_cfg_arch_wellknown_keys[i].key =3D=3D key) { + return fw_cfg_arch_wellknown_keys[i].name; + } + } + return NULL; +} diff --git a/hw/mips/Kconfig b/hw/mips/Kconfig index 8be70122f4c..64ef42dd3fd 100644 --- a/hw/mips/Kconfig +++ b/hw/mips/Kconfig @@ -38,3 +38,6 @@ config MIPS_CPS =20 config MIPS_BOSTON bool + +config FW_CFG_MIPS + bool diff --git a/hw/mips/meson.build b/hw/mips/meson.build index 77b4d8f365e..ca5e4d0f943 100644 --- a/hw/mips/meson.build +++ b/hw/mips/meson.build @@ -1,5 +1,6 @@ mips_ss =3D ss.source_set() mips_ss.add(files('mips_int.c')) +mips_ss.add(when: 'CONFIG_FW_CFG_MIPS', if_true: files('fw_cfg.c')) mips_ss.add(when: 'CONFIG_FULOONG', if_true: files('fuloong2e.c')) mips_ss.add(when: 'CONFIG_JAZZ', if_true: files('jazz.c')) mips_ss.add(when: 'CONFIG_MALTA', if_true: files('gt64xxx_pci.c', 'malta.c= ')) --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) client-ip=209.85.128.54; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f54.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707146; cv=none; d=zohomail.com; s=zohoarc; b=YkAPUfyXg3aa0XjFEzN1QMSpf95c33ZLtz8mJzlzXaXF0FFd4XcJerKEFLoxRcm3CdkPhjPQ9pytcwVGv+oVfntaj/39m6+U0ZZHIR8t6Uk/tnIjkkdOgxZb1+reWXTsjXoq0I2hMV6FnEtEaix26JnwFr872M52ydkVBDFIrTk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707146; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=3XKrzyGYDs2ZIrC3ygkFPwtkIBNSMvHVJ93e/77Thnk=; b=FfX1WCIiJNfbhbLOqjOeBf3cHBz1R+uAfj1qOseKbpDvnQ7lCns+tCip0C97JXV+51o9ZsfZNM9Cp7fC0Lw69H+K5RaeWfBD1aXwW5ufgzDY5AE3xQTJfYWllJ1NcENFO/ZMiiwgq3gv86jjc41+2uHhRaDt6Ozoho88/sCCk9Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) by mx.zohomail.com with SMTPS id 1609707146597733.7208127677558; Sun, 3 Jan 2021 12:52:26 -0800 (PST) Received: by mail-wm1-f54.google.com with SMTP id 190so15957434wmz.0 for ; Sun, 03 Jan 2021 12:52:25 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id l8sm30141603wmf.35.2021.01.03.12.52.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=3XKrzyGYDs2ZIrC3ygkFPwtkIBNSMvHVJ93e/77Thnk=; b=S4gMVMlPrEasXO1/fAAjTas9ubBkYwoSMxjdzQAgloUACYjUx06C9df6omMn1XMuPq GJJsKLzG1YTKTGEZtIvl9pwueBuOcjd6xs9xXu7u6xYV8ljlQ5/LueT+QVn89UfgFioZ 9H6zums/xeK7bW4BHq9XMdoQ0p3DYctOBxC/s6zc8e+DVjMmTM5bhLvY4Ox0wxHRbQKk 8DrUfl/r9Aazh9gXPIN/ADCbL1UVkqe9cCDtyAGs52r5NQSWk1FD44/W/uuhPfDugY8M OdMw7aD8s5RY+aegkayp5xgK82ZIqHIbufo1ynSOPsA/VDCHyOEDdL3ih1zM40WUCc/y 1JsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=3XKrzyGYDs2ZIrC3ygkFPwtkIBNSMvHVJ93e/77Thnk=; b=W9cmX2Lu8hxSwrFH6yAbYueDBEtQFD+CAQBghV/GLAp+j2qVYZAPNXS8FX9Dq/coOP jQ72E5ccGEeACcfLWtJoa4mDNbCueOS6l45yOCH/jh1JJfKoXpvgLv/btrjHXDePbRK2 HB/4sFk4NFSIIJLysAM1KjmuP3hljHX7uKmEwqZ15WRA/uA9UT5g03UYwoPBytV7BAD3 0jctjPrBDDwNvMu/SZX/S/35xKXOO+UD027uGZnu45WCk0VRH8rbOru5dxD4diaZNKAx 8t+TrHcq0q8cavPH99w58sqbHLBq7lcRG1/Q1o4xWYgTQVJVe87i6zWAX5DR2AEUhq+P um7A== X-Gm-Message-State: AOAM531wB7oCKfxF/zOUM+cDagJghGWAE3DEJq7RBc1/1khY6tyMiY7N UvedpWG3HAr8AedFzcvHiXE= X-Google-Smtp-Source: ABdhPJwvIpoNr0ZxkVrn0bKpMpRhYKNwblN3f7HQ0yMBMKtt6aF5+6Gpm8tpo19Xx4moEMEZvzw3jw== X-Received: by 2002:a1c:7d58:: with SMTP id y85mr24024584wmc.50.1609707144757; Sun, 03 Jan 2021 12:52:24 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 25/35] hw/mips: Add Loongson-3 boot parameter helpers Date: Sun, 3 Jan 2021 21:50:11 +0100 Message-Id: <20210103205021.2837760-26-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Huacai Chen Preparing to add Loongson-3 machine support, add Loongson-3's LEFI (a UEFI-like interface for BIOS-Kernel boot parameters) helpers first. Co-developed-by: Jiaxun Yang Signed-off-by: Huacai Chen Signed-off-by: Jiaxun Yang Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201221110538.3186646-4-chenhuacai@kernel.org> [PMD: Fixed typo] Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/mips/loongson3_bootp.h | 241 ++++++++++++++++++++++++++++++++++++++ hw/mips/loongson3_bootp.c | 151 ++++++++++++++++++++++++ MAINTAINERS | 2 + hw/mips/meson.build | 1 + 4 files changed, 395 insertions(+) create mode 100644 hw/mips/loongson3_bootp.h create mode 100644 hw/mips/loongson3_bootp.c diff --git a/hw/mips/loongson3_bootp.h b/hw/mips/loongson3_bootp.h new file mode 100644 index 00000000000..09f8480abff --- /dev/null +++ b/hw/mips/loongson3_bootp.h @@ -0,0 +1,241 @@ +/* + * LEFI (a UEFI-like interface for BIOS-Kernel boot parameters) data struc= tures + * defined at arch/mips/include/asm/mach-loongson64/boot_param.h in Linux = kernel + * + * Copyright (c) 2017-2020 Huacai Chen (chenhc@lemote.com) + * Copyright (c) 2017-2020 Jiaxun Yang + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#ifndef HW_MIPS_LOONGSON3_BOOTP_H +#define HW_MIPS_LOONGSON3_BOOTP_H + +struct efi_memory_map_loongson { + uint16_t vers; /* version of efi_memory_map */ + uint32_t nr_map; /* number of memory_maps */ + uint32_t mem_freq; /* memory frequence */ + struct mem_map { + uint32_t node_id; /* node_id which memory attached to */ + uint32_t mem_type; /* system memory, pci memory, pci io, etc= . */ + uint64_t mem_start; /* memory map start address */ + uint32_t mem_size; /* each memory_map size, not the total si= ze */ + } map[128]; +} QEMU_PACKED; + +enum loongson_cpu_type { + Legacy_2E =3D 0x0, + Legacy_2F =3D 0x1, + Legacy_3A =3D 0x2, + Legacy_3B =3D 0x3, + Legacy_1A =3D 0x4, + Legacy_1B =3D 0x5, + Legacy_2G =3D 0x6, + Legacy_2H =3D 0x7, + Loongson_1A =3D 0x100, + Loongson_1B =3D 0x101, + Loongson_2E =3D 0x200, + Loongson_2F =3D 0x201, + Loongson_2G =3D 0x202, + Loongson_2H =3D 0x203, + Loongson_3A =3D 0x300, + Loongson_3B =3D 0x301 +}; + +/* + * Capability and feature descriptor structure for MIPS CPU + */ +struct efi_cpuinfo_loongson { + uint16_t vers; /* version of efi_cpuinfo_loongson */ + uint32_t processor_id; /* PRID, e.g. 6305, 6306 */ + uint32_t cputype; /* Loongson_3A/3B, etc. */ + uint32_t total_node; /* num of total numa nodes */ + uint16_t cpu_startup_core_id; /* Boot core id */ + uint16_t reserved_cores_mask; + uint32_t cpu_clock_freq; /* cpu_clock */ + uint32_t nr_cpus; + char cpuname[64]; +} QEMU_PACKED; + +#define MAX_UARTS 64 +struct uart_device { + uint32_t iotype; + uint32_t uartclk; + uint32_t int_offset; + uint64_t uart_base; +} QEMU_PACKED; + +#define MAX_SENSORS 64 +#define SENSOR_TEMPER 0x00000001 +#define SENSOR_VOLTAGE 0x00000002 +#define SENSOR_FAN 0x00000004 +struct sensor_device { + char name[32]; /* a formal name */ + char label[64]; /* a flexible description */ + uint32_t type; /* SENSOR_* */ + uint32_t id; /* instance id of a sensor-class */ + uint32_t fan_policy; /* step speed or constant speed */ + uint32_t fan_percent;/* only for constant speed policy */ + uint64_t base_addr; /* base address of device registers */ +} QEMU_PACKED; + +struct system_loongson { + uint16_t vers; /* version of system_loongson */ + uint32_t ccnuma_smp; /* 0: no numa; 1: has numa */ + uint32_t sing_double_channel;/* 1: single; 2: double */ + uint32_t nr_uarts; + struct uart_device uarts[MAX_UARTS]; + uint32_t nr_sensors; + struct sensor_device sensors[MAX_SENSORS]; + char has_ec; + char ec_name[32]; + uint64_t ec_base_addr; + char has_tcm; + char tcm_name[32]; + uint64_t tcm_base_addr; + uint64_t workarounds; + uint64_t of_dtb_addr; /* NULL if not support */ +} QEMU_PACKED; + +struct irq_source_routing_table { + uint16_t vers; + uint16_t size; + uint16_t rtr_bus; + uint16_t rtr_devfn; + uint32_t vendor; + uint32_t device; + uint32_t PIC_type; /* conform use HT or PCI to route to CPU-= PIC */ + uint64_t ht_int_bit; /* 3A: 1<<24; 3B: 1<<16 */ + uint64_t ht_enable; /* irqs used in this PIC */ + uint32_t node_id; /* node id: 0x0-0; 0x1-1; 0x10-2; 0x11-3 = */ + uint64_t pci_mem_start_addr; + uint64_t pci_mem_end_addr; + uint64_t pci_io_start_addr; + uint64_t pci_io_end_addr; + uint64_t pci_config_addr; + uint16_t dma_mask_bits; + uint16_t dma_noncoherent; +} QEMU_PACKED; + +struct interface_info { + uint16_t vers; /* version of the specificition */ + uint16_t size; + uint8_t flag; + char description[64]; +} QEMU_PACKED; + +#define MAX_RESOURCE_NUMBER 128 +struct resource_loongson { + uint64_t start; /* resource start address */ + uint64_t end; /* resource end address */ + char name[64]; + uint32_t flags; +}; + +struct archdev_data {}; /* arch specific additions */ + +struct board_devices { + char name[64]; /* hold the device name */ + uint32_t num_resources; /* number of device_resource */ + /* for each device's resource */ + struct resource_loongson resource[MAX_RESOURCE_NUMBER]; + /* arch specific additions */ + struct archdev_data archdata; +}; + +struct loongson_special_attribute { + uint16_t vers; /* version of this special */ + char special_name[64]; /* special_atribute_name */ + uint32_t loongson_special_type; /* type of special device */ + /* for each device's resource */ + struct resource_loongson resource[MAX_RESOURCE_NUMBER]; +}; + +struct loongson_params { + uint64_t memory_offset; /* efi_memory_map_loongson struct offset = */ + uint64_t cpu_offset; /* efi_cpuinfo_loongson struct offset */ + uint64_t system_offset; /* system_loongson struct offset */ + uint64_t irq_offset; /* irq_source_routing_table struct offset= */ + uint64_t interface_offset; /* interface_info struct offset */ + uint64_t special_offset; /* loongson_special_attribute struct offs= et */ + uint64_t boarddev_table_offset; /* board_devices offset */ +}; + +struct smbios_tables { + uint16_t vers; /* version of smbios */ + uint64_t vga_bios; /* vga_bios address */ + struct loongson_params lp; +}; + +struct efi_reset_system_t { + uint64_t ResetCold; + uint64_t ResetWarm; + uint64_t ResetType; + uint64_t Shutdown; + uint64_t DoSuspend; /* NULL if not support */ +}; + +struct efi_loongson { + uint64_t mps; /* MPS table */ + uint64_t acpi; /* ACPI table (IA64 ext 0.71) */ + uint64_t acpi20; /* ACPI table (ACPI 2.0) */ + struct smbios_tables smbios; /* SM BIOS table */ + uint64_t sal_systab; /* SAL system table */ + uint64_t boot_info; /* boot info table */ +}; + +struct boot_params { + struct efi_loongson efi; + struct efi_reset_system_t reset_system; +}; + +/* Overall MMIO & Memory layout */ +enum { + VIRT_LOWMEM, + VIRT_PM, + VIRT_FW_CFG, + VIRT_RTC, + VIRT_PCIE_PIO, + VIRT_PCIE_ECAM, + VIRT_BIOS_ROM, + VIRT_UART, + VIRT_LIOINTC, + VIRT_PCIE_MMIO, + VIRT_HIGHMEM +}; + +/* Low MEM layout for QEMU kernel loader */ +enum { + LOADER_KERNEL, + LOADER_INITRD, + LOADER_CMDLINE +}; + +/* BIOS ROM layout for QEMU kernel loader */ +enum { + LOADER_BOOTROM, + LOADER_PARAM, +}; + +struct MemmapEntry { + hwaddr base; + hwaddr size; +}; + +extern const struct MemmapEntry virt_memmap[]; +void init_loongson_params(struct loongson_params *lp, void *p, + uint64_t cpu_freq, uint64_t ram_size); +void init_reset_system(struct efi_reset_system_t *reset); + +#endif diff --git a/hw/mips/loongson3_bootp.c b/hw/mips/loongson3_bootp.c new file mode 100644 index 00000000000..f99af229327 --- /dev/null +++ b/hw/mips/loongson3_bootp.c @@ -0,0 +1,151 @@ +/* + * LEFI (a UEFI-like interface for BIOS-Kernel boot parameters) helpers + * + * Copyright (c) 2018-2020 Huacai Chen (chenhc@lemote.com) + * Copyright (c) 2018-2020 Jiaxun Yang + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "qemu/osdep.h" +#include "qemu/units.h" +#include "qemu/cutils.h" +#include "cpu.h" +#include "hw/boards.h" +#include "hw/mips/loongson3_bootp.h" + +#define LOONGSON3_CORE_PER_NODE 4 + +static void init_cpu_info(void *g_cpuinfo, uint64_t cpu_freq) +{ + struct efi_cpuinfo_loongson *c =3D g_cpuinfo; + + c->cputype =3D cpu_to_le32(Loongson_3A); + c->processor_id =3D cpu_to_le32(MIPS_CPU(first_cpu)->env.CP0_PRid); + if (cpu_freq > UINT_MAX) { + c->cpu_clock_freq =3D cpu_to_le32(UINT_MAX); + } else { + c->cpu_clock_freq =3D cpu_to_le32(cpu_freq); + } + + c->cpu_startup_core_id =3D cpu_to_le16(0); + c->nr_cpus =3D cpu_to_le32(current_machine->smp.cpus); + c->total_node =3D cpu_to_le32(DIV_ROUND_UP(current_machine->smp.cpus, + LOONGSON3_CORE_PER_NODE)); +} + +static void init_memory_map(void *g_map, uint64_t ram_size) +{ + struct efi_memory_map_loongson *emap =3D g_map; + + emap->nr_map =3D cpu_to_le32(2); + emap->mem_freq =3D cpu_to_le32(300000000); + + emap->map[0].node_id =3D cpu_to_le32(0); + emap->map[0].mem_type =3D cpu_to_le32(1); + emap->map[0].mem_start =3D cpu_to_le64(0x0); + emap->map[0].mem_size =3D cpu_to_le32(240); + + emap->map[1].node_id =3D cpu_to_le32(0); + emap->map[1].mem_type =3D cpu_to_le32(2); + emap->map[1].mem_start =3D cpu_to_le64(0x90000000); + emap->map[1].mem_size =3D cpu_to_le32((ram_size / MiB) - 256); +} + +static void init_system_loongson(void *g_system) +{ + struct system_loongson *s =3D g_system; + + s->ccnuma_smp =3D cpu_to_le32(0); + s->sing_double_channel =3D cpu_to_le32(1); + s->nr_uarts =3D cpu_to_le32(1); + s->uarts[0].iotype =3D cpu_to_le32(2); + s->uarts[0].int_offset =3D cpu_to_le32(2); + s->uarts[0].uartclk =3D cpu_to_le32(25000000); /* Random value */ + s->uarts[0].uart_base =3D cpu_to_le64(virt_memmap[VIRT_UART].base); +} + +static void init_irq_source(void *g_irq_source) +{ + struct irq_source_routing_table *irq_info =3D g_irq_source; + + irq_info->node_id =3D cpu_to_le32(0); + irq_info->PIC_type =3D cpu_to_le32(0); + irq_info->dma_mask_bits =3D cpu_to_le16(64); + irq_info->pci_mem_start_addr =3D cpu_to_le64(virt_memmap[VIRT_PCIE_MMI= O].base); + irq_info->pci_mem_end_addr =3D cpu_to_le64(virt_memmap[VIRT_PCIE_MMIO]= .base + + virt_memmap[VIRT_PCIE_MMIO].s= ize - 1); + irq_info->pci_io_start_addr =3D cpu_to_le64(virt_memmap[VIRT_PCIE_PIO]= .base); +} + +static void init_interface_info(void *g_interface) +{ + struct interface_info *interface =3D g_interface; + + interface->vers =3D cpu_to_le16(0x01); + strpadcpy(interface->description, 64, "UEFI_Version_v1.0", '\0'); +} + +static void board_devices_info(void *g_board) +{ + struct board_devices *bd =3D g_board; + + strpadcpy(bd->name, 64, "Loongson-3A-VIRT-1w-V1.00-demo", '\0'); +} + +static void init_special_info(void *g_special) +{ + struct loongson_special_attribute *special =3D g_special; + + strpadcpy(special->special_name, 64, "2018-05-01", '\0'); +} + +void init_loongson_params(struct loongson_params *lp, void *p, + uint64_t cpu_freq, uint64_t ram_size) +{ + init_cpu_info(p, cpu_freq); + lp->cpu_offset =3D cpu_to_le64((uintptr_t)p - (uintptr_t)lp); + p +=3D ROUND_UP(sizeof(struct efi_cpuinfo_loongson), 64); + + init_memory_map(p, ram_size); + lp->memory_offset =3D cpu_to_le64((uintptr_t)p - (uintptr_t)lp); + p +=3D ROUND_UP(sizeof(struct efi_memory_map_loongson), 64); + + init_system_loongson(p); + lp->system_offset =3D cpu_to_le64((uintptr_t)p - (uintptr_t)lp); + p +=3D ROUND_UP(sizeof(struct system_loongson), 64); + + init_irq_source(p); + lp->irq_offset =3D cpu_to_le64((uintptr_t)p - (uintptr_t)lp); + p +=3D ROUND_UP(sizeof(struct irq_source_routing_table), 64); + + init_interface_info(p); + lp->interface_offset =3D cpu_to_le64((uintptr_t)p - (uintptr_t)lp); + p +=3D ROUND_UP(sizeof(struct interface_info), 64); + + board_devices_info(p); + lp->boarddev_table_offset =3D cpu_to_le64((uintptr_t)p - (uintptr_t)lp= ); + p +=3D ROUND_UP(sizeof(struct board_devices), 64); + + init_special_info(p); + lp->special_offset =3D cpu_to_le64((uintptr_t)p - (uintptr_t)lp); + p +=3D ROUND_UP(sizeof(struct loongson_special_attribute), 64); +} + +void init_reset_system(struct efi_reset_system_t *reset) +{ + reset->Shutdown =3D cpu_to_le64(0xffffffffbfc000a8); + reset->ResetCold =3D cpu_to_le64(0xffffffffbfc00080); + reset->ResetWarm =3D cpu_to_le64(0xffffffffbfc00080); +} diff --git a/MAINTAINERS b/MAINTAINERS index 42fedf91e75..29c5e3b13c3 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1159,6 +1159,8 @@ M: Huacai Chen R: Jiaxun Yang S: Maintained F: hw/intc/loongson_liointc.c +F: hw/mips/loongson3_bootp.c +F: hw/mips/loongson3_bootp.h =20 Boston M: Paul Burton diff --git a/hw/mips/meson.build b/hw/mips/meson.build index ca5e4d0f943..b06329f7ff7 100644 --- a/hw/mips/meson.build +++ b/hw/mips/meson.build @@ -2,6 +2,7 @@ mips_ss.add(files('mips_int.c')) mips_ss.add(when: 'CONFIG_FW_CFG_MIPS', if_true: files('fw_cfg.c')) mips_ss.add(when: 'CONFIG_FULOONG', if_true: files('fuloong2e.c')) +mips_ss.add(when: 'CONFIG_LOONGSON3V', if_true: files('loongson3_bootp.c')) mips_ss.add(when: 'CONFIG_JAZZ', if_true: files('jazz.c')) mips_ss.add(when: 'CONFIG_MALTA', if_true: files('gt64xxx_pci.c', 'malta.c= ')) mips_ss.add(when: 'CONFIG_MIPSSIM', if_true: files('mipssim.c')) --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.50 as permitted sender) client-ip=209.85.128.50; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f50.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.50 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707151; cv=none; d=zohomail.com; s=zohoarc; b=kSCXsdhUIhACto08FN7vwcvTBTGaNy4wIHW7qDSea2uwSKzXzjrZj4fajeGoh0zXDN7+66HC3JB/ijQbjlrh2JwxtcRRHwLMFcQ/Q+/OMCCr5bySaHKo5+bxQ5NRFd8TzOR5gBMyC40RltVZKG/e7lNmoHlM7YLYyPZ29waHQZE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707151; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ch++Gayvsj+eqAvxfJvRoYj39tY5VoTKczfRR8fO0h4=; b=L3GhVKoymVFERdqOBNzAX0mg17SWOBP7bO4BgKimEt3X5B5umI1IQbFnFFscnVh4fvAj9xXrO4f6w4cw4u1rG+y46ClzCu//JYVFOw5XpX5jOD0JU0+Suv348/pgEEzL0E+9tKaz5EKiSCL7ek+IgpAlYReeLqP/8UkyBLbLOUU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.50 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) by mx.zohomail.com with SMTPS id 160970715163865.236089346928; Sun, 3 Jan 2021 12:52:31 -0800 (PST) Received: by mail-wm1-f50.google.com with SMTP id 3so16643477wmg.4 for ; Sun, 03 Jan 2021 12:52:30 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id u13sm88513993wrw.11.2021.01.03.12.52.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ch++Gayvsj+eqAvxfJvRoYj39tY5VoTKczfRR8fO0h4=; b=NWX2YlKmFKfMZ5N1mjEUYB2FkavVWonVG/aviPxYP+b4P+7HkapebQuCzp3pud4cL+ Y31jRdb+RgyCbgVWkb5d7dLFE/QzALgoJ1XV46iEg4XbWS525/47RY3B6IHOZfcZ2Y81 bgL0g/FQydyilfOxKgwHoLDsuzRK0Go/WQQkedp1MOJhiOuJGSWyXcUwHVRVivrsIcZB cABN3PZ6LhA7B2PlmJxngbqh5dsfc0QJLP/MFXstbZT1kCAbZ6vXRGBW2yQ05tSUIUpW +ccnUFej7KPK6SUpjGgo48gsqkGW01TXI/NwqaqnBGZWuBFN9vEG2VAwEyGdMDp5H/8h pu4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ch++Gayvsj+eqAvxfJvRoYj39tY5VoTKczfRR8fO0h4=; b=fHazxr4El7ln6XM9jBulcY/axNpKunR4dUjodYJLaOKr1dkPPbH+zUKVqDmEA0isDc WJtoJyTfPvC9Xig5CrzJIWZTj+ToIwNffHl6CkwdqQGgNoTZgLW+UUAZaS3PwCEExycQ dYeoQhV4Vu5aVybU1oclPR9T/KiXiO9F2sewag3gbQlH6ZHJKYkXNTf56cLv2MBQWNMc xbv5a9mp2pdyEdNIo2XCPYqZmH9y8QcX+gjrsUVx2aOyxAbiuk71O/SXCanTEL8ZQTtK X4KDepcZNjeyIj4JD0gen0cuL4NnqQw+rPkH60NbOfPyweiEMSXWiZMIJhbpV/wJ91a6 OGAw== X-Gm-Message-State: AOAM530eJN+Mf4yV3tNR18Rz5UrSgAz+8Rx8W7qkx8sx/6XKOt4Smco5 U2Nwjbiz/92giKJgALYEa6w= X-Google-Smtp-Source: ABdhPJyuIt03IUJXQ362shK1QovMtC/h4V5XUdZnW9LcMlErq+GGHQsTx467+XTL0pm/JvvDEkhoFg== X-Received: by 2002:a1c:f70c:: with SMTP id v12mr22649109wmh.77.1609707149558; Sun, 03 Jan 2021 12:52:29 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 26/35] hw/mips: Add Loongson-3 machine support Date: Sun, 3 Jan 2021 21:50:12 +0100 Message-Id: <20210103205021.2837760-27-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Huacai Chen Add Loongson-3 based machine support, it use liointc as the interrupt controler and use GPEX as the pci controller. Currently it can work with both TCG and KVM. As the machine model is not based on any exiting physical hardware, the name of the machine is "loongson3-virt". It may be superseded in future by a real machine model. If this happens, then a regular deprecation procedure shall occur for "loongson3-virt" machine. We now already have a full functional Linux kernel (based on Linux-5.4.x LTS) here: https://github.com/chenhuacai/linux Of course the upstream kernel is also usable (the kvm host side and guest side have both been upstream in Linux-5.9): https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git How to use QEMU/Loongson-3? 1, Download kernel source from the above URL; 2, Build a kernel with arch/mips/configs/loongson3_defconfig; 3, Boot a Loongson-3A4000 host with this kernel (for KVM mode); 4, Build QEMU-master with this patchset; 5, modprobe kvm (only necessary for KVM mode); 6, Use QEMU with TCG: qemu-system-mips64el -M loongson3-virt,accel=3Dtcg -cpu Loongson-3A1= 000 -kernel -append ... Use QEMU with KVM: qemu-system-mips64el -M loongson3-virt,accel=3Dkvm -cpu Loongson-3A4= 000 -kernel -append ... The "-cpu" parameter is optional here and QEMU will use the correct type= for TCG/KVM automatically. Co-developed-by: Jiaxun Yang Signed-off-by: Huacai Chen Signed-off-by: Jiaxun Yang Message-Id: <20201221110538.3186646-5-chenhuacai@kernel.org> Reviewed-by: Philippe Mathieu-Daud=C3=A9 [PMD: Select FW_CFG_MIPS in Kconfig] Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- default-configs/devices/mips64el-softmmu.mak | 1 + hw/mips/loongson3_virt.c | 627 +++++++++++++++++++ MAINTAINERS | 1 + hw/mips/Kconfig | 12 + hw/mips/meson.build | 2 +- 5 files changed, 642 insertions(+), 1 deletion(-) create mode 100644 hw/mips/loongson3_virt.c diff --git a/default-configs/devices/mips64el-softmmu.mak b/default-configs= /devices/mips64el-softmmu.mak index 9f8a3ef1567..26c660a05c4 100644 --- a/default-configs/devices/mips64el-softmmu.mak +++ b/default-configs/devices/mips64el-softmmu.mak @@ -3,6 +3,7 @@ include mips-softmmu-common.mak CONFIG_IDE_VIA=3Dy CONFIG_FULOONG=3Dy +CONFIG_LOONGSON3V=3Dy CONFIG_ATI_VGA=3Dy CONFIG_RTL8139_PCI=3Dy CONFIG_JAZZ=3Dy diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c new file mode 100644 index 00000000000..e3723d3dd0f --- /dev/null +++ b/hw/mips/loongson3_virt.c @@ -0,0 +1,627 @@ +/* + * Generic Loongson-3 Platform support + * + * Copyright (c) 2018-2020 Huacai Chen (chenhc@lemote.com) + * Copyright (c) 2018-2020 Jiaxun Yang + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/* + * Generic virtualized PC Platform based on Loongson-3 CPU (MIPS64R2 with + * extensions, 800~2000MHz) + */ + +#include "qemu/osdep.h" +#include "qemu-common.h" +#include "qemu/units.h" +#include "qemu/cutils.h" +#include "qemu/datadir.h" +#include "qapi/error.h" +#include "cpu.h" +#include "elf.h" +#include "kvm_mips.h" +#include "hw/boards.h" +#include "hw/char/serial.h" +#include "hw/intc/loongson_liointc.h" +#include "hw/mips/mips.h" +#include "hw/mips/cpudevs.h" +#include "hw/mips/fw_cfg.h" +#include "hw/mips/loongson3_bootp.h" +#include "hw/misc/unimp.h" +#include "hw/intc/i8259.h" +#include "hw/loader.h" +#include "hw/isa/superio.h" +#include "hw/pci/msi.h" +#include "hw/pci/pci.h" +#include "hw/pci/pci_host.h" +#include "hw/pci-host/gpex.h" +#include "hw/usb.h" +#include "net/net.h" +#include "exec/address-spaces.h" +#include "sysemu/kvm.h" +#include "sysemu/qtest.h" +#include "sysemu/reset.h" +#include "sysemu/runstate.h" +#include "qemu/log.h" +#include "qemu/error-report.h" + +#define PM_CNTL_MODE 0x10 + +#define LOONGSON_MAX_VCPUS 16 + +/* + * Loongson-3's virtual machine BIOS can be obtained here: + * 1, https://github.com/loongson-community/firmware-nonfree + * 2, http://dev.lemote.com:8000/files/firmware/UEFI/KVM/bios_loongson3.bin + */ +#define LOONGSON3_BIOSNAME "bios_loongson3.bin" + +#define UART_IRQ 0 +#define RTC_IRQ 1 +#define PCIE_IRQ_BASE 2 + +const struct MemmapEntry virt_memmap[] =3D { + [VIRT_LOWMEM] =3D { 0x00000000, 0x10000000 }, + [VIRT_PM] =3D { 0x10080000, 0x100 }, + [VIRT_FW_CFG] =3D { 0x10080100, 0x100 }, + [VIRT_RTC] =3D { 0x10081000, 0x1000 }, + [VIRT_PCIE_PIO] =3D { 0x18000000, 0x80000 }, + [VIRT_PCIE_ECAM] =3D { 0x1a000000, 0x2000000 }, + [VIRT_BIOS_ROM] =3D { 0x1fc00000, 0x200000 }, + [VIRT_UART] =3D { 0x1fe001e0, 0x8 }, + [VIRT_LIOINTC] =3D { 0x3ff01400, 0x64 }, + [VIRT_PCIE_MMIO] =3D { 0x40000000, 0x40000000 }, + [VIRT_HIGHMEM] =3D { 0x80000000, 0x0 }, /* Variable */ +}; + +static const struct MemmapEntry loader_memmap[] =3D { + [LOADER_KERNEL] =3D { 0x00000000, 0x4000000 }, + [LOADER_INITRD] =3D { 0x04000000, 0x0 }, /* Variable */ + [LOADER_CMDLINE] =3D { 0x0ff00000, 0x100000 }, +}; + +static const struct MemmapEntry loader_rommap[] =3D { + [LOADER_BOOTROM] =3D { 0x1fc00000, 0x1000 }, + [LOADER_PARAM] =3D { 0x1fc01000, 0x10000 }, +}; + +struct LoongsonMachineState { + MachineState parent_obj; + MemoryRegion *pio_alias; + MemoryRegion *mmio_alias; + MemoryRegion *ecam_alias; +}; +typedef struct LoongsonMachineState LoongsonMachineState; + +#define TYPE_LOONGSON_MACHINE MACHINE_TYPE_NAME("loongson3-virt") +DECLARE_INSTANCE_CHECKER(LoongsonMachineState, LOONGSON_MACHINE, TYPE_LOON= GSON_MACHINE) + +static struct _loaderparams { + uint64_t cpu_freq; + uint64_t ram_size; + const char *kernel_cmdline; + const char *kernel_filename; + const char *initrd_filename; + uint64_t kernel_entry; + uint64_t a0, a1, a2; +} loaderparams; + +static uint64_t loongson3_pm_read(void *opaque, hwaddr addr, unsigned size) +{ + return 0; +} + +static void loongson3_pm_write(void *opaque, hwaddr addr, + uint64_t val, unsigned size) +{ + if (addr !=3D PM_CNTL_MODE) { + return; + } + + switch (val) { + case 0x00: + qemu_system_reset_request(SHUTDOWN_CAUSE_GUEST_RESET); + return; + case 0xff: + qemu_system_shutdown_request(SHUTDOWN_CAUSE_GUEST_SHUTDOWN); + return; + default: + return; + } +} + +static const MemoryRegionOps loongson3_pm_ops =3D { + .read =3D loongson3_pm_read, + .write =3D loongson3_pm_write, + .endianness =3D DEVICE_NATIVE_ENDIAN, + .valid =3D { + .min_access_size =3D 1, + .max_access_size =3D 1 + } +}; + +#define DEF_LOONGSON3_FREQ (800 * 1000 * 1000) + +static uint64_t get_cpu_freq_hz(void) +{ +#ifdef CONFIG_KVM + int ret; + uint64_t freq; + struct kvm_one_reg freq_reg =3D { + .id =3D KVM_REG_MIPS_COUNT_HZ, + .addr =3D (uintptr_t)(&freq) + }; + + if (kvm_enabled()) { + ret =3D kvm_vcpu_ioctl(first_cpu, KVM_GET_ONE_REG, &freq_reg); + if (ret >=3D 0) { + return freq * 2; + } + } +#endif + return DEF_LOONGSON3_FREQ; +} + +static void init_boot_param(void) +{ + static void *p; + struct boot_params *bp; + + p =3D g_malloc0(loader_rommap[LOADER_PARAM].size); + bp =3D p; + + bp->efi.smbios.vers =3D cpu_to_le16(1); + init_reset_system(&(bp->reset_system)); + p +=3D ROUND_UP(sizeof(struct boot_params), 64); + init_loongson_params(&(bp->efi.smbios.lp), p, + loaderparams.cpu_freq, loaderparams.ram_size); + + rom_add_blob_fixed("params_rom", bp, + loader_rommap[LOADER_PARAM].size, + loader_rommap[LOADER_PARAM].base); + + g_free(bp); + + loaderparams.a2 =3D cpu_mips_phys_to_kseg0(NULL, + loader_rommap[LOADER_PARAM].b= ase); +} + +static void init_boot_rom(void) +{ + const unsigned int boot_code[] =3D { + 0x40086000, /* mfc0 t0, CP0_STATUS = */ + 0x240900E4, /* li t1, 0xe4 #set kx, sx, ux, erl = */ + 0x01094025, /* or t0, t0, t1 = */ + 0x3C090040, /* lui t1, 0x40 #set bev = */ + 0x01094025, /* or t0, t0, t1 = */ + 0x40886000, /* mtc0 t0, CP0_STATUS = */ + 0x00000000, + 0x40806800, /* mtc0 zero, CP0_CAUSE = */ + 0x00000000, + 0x400A7801, /* mfc0 t2, $15, 1 = */ + 0x314A00FF, /* andi t2, 0x0ff = */ + 0x3C089000, /* dli t0, 0x900000003ff01000 = */ + 0x00084438, + 0x35083FF0, + 0x00084438, + 0x35081000, + 0x314B0003, /* andi t3, t2, 0x3 #local cpuid = */ + 0x000B5A00, /* sll t3, 8 = */ + 0x010B4025, /* or t0, t0, t3 = */ + 0x314C000C, /* andi t4, t2, 0xc #node id = */ + 0x000C62BC, /* dsll t4, 42 = */ + 0x010C4025, /* or t0, t0, t4 = */ + /* WaitForInit: = */ + 0xDD020020, /* ld v0, FN_OFF(t0) #FN_OFF 0x020 = */ + 0x1040FFFE, /* beqz v0, WaitForInit = */ + 0x00000000, /* nop = */ + 0xDD1D0028, /* ld sp, SP_OFF(t0) #FN_OFF 0x028 = */ + 0xDD1C0030, /* ld gp, GP_OFF(t0) #FN_OFF 0x030 = */ + 0xDD050038, /* ld a1, A1_OFF(t0) #FN_OFF 0x038 = */ + 0x00400008, /* jr v0 #byebye = */ + 0x00000000, /* nop = */ + 0x1000FFFF, /* 1: b 1b = */ + 0x00000000, /* nop = */ + + /* Reset = */ + 0x3C0C9000, /* dli t0, 0x9000000010080010 = */ + 0x358C0000, + 0x000C6438, + 0x358C1008, + 0x000C6438, + 0x358C0010, + 0x240D0000, /* li t1, 0x00 = */ + 0xA18D0000, /* sb t1, (t0) = */ + 0x1000FFFF, /* 1: b 1b = */ + 0x00000000, /* nop = */ + + /* Shutdown = */ + 0x3C0C9000, /* dli t0, 0x9000000010080010 = */ + 0x358C0000, + 0x000C6438, + 0x358C1008, + 0x000C6438, + 0x358C0010, + 0x240D00FF, /* li t1, 0xff = */ + 0xA18D0000, /* sb t1, (t0) = */ + 0x1000FFFF, /* 1: b 1b = */ + 0x00000000 /* nop = */ + }; + + rom_add_blob_fixed("boot_rom", boot_code, sizeof(boot_code), + loader_rommap[LOADER_BOOTROM].base); +} + +static void fw_cfg_boot_set(void *opaque, const char *boot_device, + Error **errp) +{ + fw_cfg_modify_i16(opaque, FW_CFG_BOOT_DEVICE, boot_device[0]); +} + +static void fw_conf_init(unsigned long ram_size) +{ + FWCfgState *fw_cfg; + hwaddr cfg_addr =3D virt_memmap[VIRT_FW_CFG].base; + + fw_cfg =3D 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_i32(fw_cfg, FW_CFG_MACHINE_VERSION, 1); + fw_cfg_add_i64(fw_cfg, FW_CFG_CPU_FREQ, get_cpu_freq_hz()); + qemu_register_boot_set(fw_cfg_boot_set, fw_cfg); +} + +static int set_prom_cmdline(ram_addr_t initrd_offset, long initrd_size) +{ + int ret =3D 0; + void *cmdline_buf; + hwaddr cmdline_vaddr; + unsigned int *parg_env; + + /* Allocate cmdline_buf for command line. */ + cmdline_buf =3D g_malloc0(loader_memmap[LOADER_CMDLINE].size); + cmdline_vaddr =3D cpu_mips_phys_to_kseg0(NULL, + loader_memmap[LOADER_CMDLINE].b= ase); + + /* + * Layout of cmdline_buf looks like this: + * argv[0], argv[1], 0, env[0], env[1], ... env[i], 0, + * argv[0]'s data, argv[1]'s data, env[0]'data, ..., env[i]'s data, 0 + */ + parg_env =3D (void *)cmdline_buf; + + ret =3D (3 + 1) * 4; + *parg_env++ =3D cmdline_vaddr + ret; + ret +=3D (1 + snprintf(cmdline_buf + ret, 256 - ret, "g")); + + /* argv1 */ + *parg_env++ =3D cmdline_vaddr + ret; + if (initrd_size > 0) + ret +=3D (1 + snprintf(cmdline_buf + ret, 256 - ret, + "rd_start=3D0x" TARGET_FMT_lx " rd_size=3D%li %s", + cpu_mips_phys_to_kseg0(NULL, initrd_offset), + initrd_size, loaderparams.kernel_cmdline)); + else + ret +=3D (1 + snprintf(cmdline_buf + ret, 256 - ret, "%s", + loaderparams.kernel_cmdline)); + + /* argv2 */ + *parg_env++ =3D cmdline_vaddr + 4 * ret; + + rom_add_blob_fixed("cmdline", cmdline_buf, + loader_memmap[LOADER_CMDLINE].size, + loader_memmap[LOADER_CMDLINE].base); + + g_free(cmdline_buf); + + loaderparams.a0 =3D 2; + loaderparams.a1 =3D cmdline_vaddr; + + return 0; +} + +static uint64_t load_kernel(CPUMIPSState *env) +{ + long kernel_size; + ram_addr_t initrd_offset; + uint64_t kernel_entry, kernel_low, kernel_high, initrd_size; + + kernel_size =3D load_elf(loaderparams.kernel_filename, NULL, + cpu_mips_kseg0_to_phys, NULL, + (uint64_t *)&kernel_entry, + (uint64_t *)&kernel_low, (uint64_t *)&kernel_hi= gh, + NULL, 0, EM_MIPS, 1, 0); + if (kernel_size < 0) { + error_report("could not load kernel '%s': %s", + loaderparams.kernel_filename, + load_elf_strerror(kernel_size)); + exit(1); + } + + /* load initrd */ + initrd_size =3D 0; + initrd_offset =3D 0; + if (loaderparams.initrd_filename) { + initrd_size =3D get_image_size(loaderparams.initrd_filename); + if (initrd_size > 0) { + initrd_offset =3D MAX(loader_memmap[LOADER_INITRD].base, + ROUND_UP(kernel_high, INITRD_PAGE_SIZE)); + + if (initrd_offset + initrd_size > loaderparams.ram_size) { + error_report("memory too small for initial ram disk '%s'", + loaderparams.initrd_filename); + exit(1); + } + + initrd_size =3D load_image_targphys(loaderparams.initrd_filena= me, + initrd_offset, + loaderparams.ram_size - init= rd_offset); + } + + if (initrd_size =3D=3D (target_ulong) -1) { + error_report("could not load initial ram disk '%s'", + loaderparams.initrd_filename); + exit(1); + } + } + + /* Setup prom cmdline. */ + set_prom_cmdline(initrd_offset, initrd_size); + + return kernel_entry; +} + +static void main_cpu_reset(void *opaque) +{ + MIPSCPU *cpu =3D opaque; + CPUMIPSState *env =3D &cpu->env; + + cpu_reset(CPU(cpu)); + + /* Loongson-3 reset stuff */ + if (loaderparams.kernel_filename) { + if (cpu =3D=3D MIPS_CPU(first_cpu)) { + env->active_tc.gpr[4] =3D loaderparams.a0; + env->active_tc.gpr[5] =3D loaderparams.a1; + env->active_tc.gpr[6] =3D loaderparams.a2; + env->active_tc.PC =3D loaderparams.kernel_entry; + } + env->CP0_Status &=3D ~((1 << CP0St_BEV) | (1 << CP0St_ERL)); + } +} + +static inline void loongson3_virt_devices_init(MachineState *machine, + DeviceState *pic) +{ + int i; + qemu_irq irq; + PCIBus *pci_bus; + DeviceState *dev; + MemoryRegion *mmio_reg, *ecam_reg; + LoongsonMachineState *s =3D LOONGSON_MACHINE(machine); + + dev =3D qdev_new(TYPE_GPEX_HOST); + sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); + pci_bus =3D PCI_HOST_BRIDGE(dev)->bus; + + s->ecam_alias =3D g_new0(MemoryRegion, 1); + ecam_reg =3D sysbus_mmio_get_region(SYS_BUS_DEVICE(dev), 0); + memory_region_init_alias(s->ecam_alias, OBJECT(dev), "pcie-ecam", + ecam_reg, 0, virt_memmap[VIRT_PCIE_ECAM].size= ); + memory_region_add_subregion(get_system_memory(), + virt_memmap[VIRT_PCIE_ECAM].base, + s->ecam_alias); + + s->mmio_alias =3D g_new0(MemoryRegion, 1); + mmio_reg =3D sysbus_mmio_get_region(SYS_BUS_DEVICE(dev), 1); + memory_region_init_alias(s->mmio_alias, OBJECT(dev), "pcie-mmio", + mmio_reg, virt_memmap[VIRT_PCIE_MMIO].base, + virt_memmap[VIRT_PCIE_MMIO].size); + memory_region_add_subregion(get_system_memory(), + virt_memmap[VIRT_PCIE_MMIO].base, + s->mmio_alias); + + s->pio_alias =3D g_new0(MemoryRegion, 1); + memory_region_init_alias(s->pio_alias, OBJECT(dev), "pcie-pio", + get_system_io(), 0, + virt_memmap[VIRT_PCIE_PIO].size); + memory_region_add_subregion(get_system_memory(), + virt_memmap[VIRT_PCIE_PIO].base, s->pio_al= ias); + sysbus_mmio_map(SYS_BUS_DEVICE(dev), 2, virt_memmap[VIRT_PCIE_PIO].bas= e); + + for (i =3D 0; i < GPEX_NUM_IRQS; i++) { + irq =3D qdev_get_gpio_in(pic, PCIE_IRQ_BASE + i); + sysbus_connect_irq(SYS_BUS_DEVICE(dev), i, irq); + gpex_set_irq_num(GPEX_HOST(dev), i, PCIE_IRQ_BASE + i); + } + msi_nonbroken =3D true; + + pci_vga_init(pci_bus); + + if (defaults_enabled()) { + pci_create_simple(pci_bus, -1, "pci-ohci"); + usb_create_simple(usb_bus_find(-1), "usb-kbd"); + usb_create_simple(usb_bus_find(-1), "usb-tablet"); + } + + for (i =3D 0; i < nb_nics; i++) { + NICInfo *nd =3D &nd_table[i]; + + if (!nd->model) { + nd->model =3D g_strdup("virtio"); + } + + pci_nic_init_nofail(nd, pci_bus, nd->model, NULL); + } +} + +static void mips_loongson3_virt_init(MachineState *machine) +{ + int i; + long bios_size; + MIPSCPU *cpu; + Clock *cpuclk; + CPUMIPSState *env; + DeviceState *liointc; + char *filename; + const char *kernel_cmdline =3D machine->kernel_cmdline; + const char *kernel_filename =3D machine->kernel_filename; + const char *initrd_filename =3D machine->initrd_filename; + ram_addr_t ram_size =3D machine->ram_size; + MemoryRegion *address_space_mem =3D get_system_memory(); + MemoryRegion *ram =3D g_new(MemoryRegion, 1); + MemoryRegion *bios =3D g_new(MemoryRegion, 1); + MemoryRegion *iomem =3D g_new(MemoryRegion, 1); + + /* TODO: TCG will support all CPU types */ + if (!kvm_enabled()) { + if (!machine->cpu_type) { + machine->cpu_type =3D MIPS_CPU_TYPE_NAME("Loongson-3A1000"); + } + if (!strstr(machine->cpu_type, "Loongson-3A1000")) { + error_report("Loongson-3/TCG needs cpu type Loongson-3A1000"); + exit(1); + } + } else { + if (!machine->cpu_type) { + machine->cpu_type =3D MIPS_CPU_TYPE_NAME("Loongson-3A4000"); + } + if (!strstr(machine->cpu_type, "Loongson-3A4000")) { + error_report("Loongson-3/KVM needs cpu type Loongson-3A4000"); + exit(1); + } + } + + if (ram_size < 512 * MiB) { + error_report("Loongson-3 machine needs at least 512MB memory"); + exit(1); + } + + /* + * The whole MMIO range among configure registers doesn't generate + * exception when accessing invalid memory. Create some unimplememted + * devices to emulate this feature. + */ + create_unimplemented_device("mmio fallback 0", 0x10000000, 256 * MiB); + create_unimplemented_device("mmio fallback 1", 0x30000000, 256 * MiB); + + liointc =3D qdev_new("loongson.liointc"); + sysbus_realize_and_unref(SYS_BUS_DEVICE(liointc), &error_fatal); + + sysbus_mmio_map(SYS_BUS_DEVICE(liointc), 0, virt_memmap[VIRT_LIOINTC].= base); + + serial_mm_init(address_space_mem, virt_memmap[VIRT_UART].base, 0, + qdev_get_gpio_in(liointc, UART_IRQ), 115200, serial_hd(= 0), + DEVICE_NATIVE_ENDIAN); + + sysbus_create_simple("goldfish_rtc", virt_memmap[VIRT_RTC].base, + qdev_get_gpio_in(liointc, RTC_IRQ)); + + cpuclk =3D clock_new(OBJECT(machine), "cpu-refclk"); + clock_set_hz(cpuclk, DEF_LOONGSON3_FREQ); + + for (i =3D 0; i < machine->smp.cpus; i++) { + int ip; + + /* init CPUs */ + cpu =3D mips_cpu_create_with_clock(machine->cpu_type, cpuclk); + + /* Init internal devices */ + cpu_mips_irq_init_cpu(cpu); + cpu_mips_clock_init(cpu); + qemu_register_reset(main_cpu_reset, cpu); + + if (i >=3D 4) { + continue; /* Only node-0 can be connected to LIOINTC */ + } + + for (ip =3D 0; ip < 4 ; ip++) { + int pin =3D i * 4 + ip; + sysbus_connect_irq(SYS_BUS_DEVICE(liointc), + pin, cpu->env.irq[ip + 2]); + } + } + env =3D &MIPS_CPU(first_cpu)->env; + + /* Allocate RAM/BIOS, 0x00000000~0x10000000 is alias of 0x80000000~0x9= 0000000 */ + memory_region_init_rom(bios, NULL, "loongson3.bios", + virt_memmap[VIRT_BIOS_ROM].size, &error_fatal); + memory_region_init_alias(ram, NULL, "loongson3.lowmem", + machine->ram, 0, virt_memmap[VIRT_LOWMEM].size); + memory_region_init_io(iomem, NULL, &loongson3_pm_ops, + NULL, "loongson3_pm", virt_memmap[VIRT_PM].size= ); + + memory_region_add_subregion(address_space_mem, + virt_memmap[VIRT_LOWMEM].base, ram); + memory_region_add_subregion(address_space_mem, + virt_memmap[VIRT_BIOS_ROM].base, bios); + memory_region_add_subregion(address_space_mem, + virt_memmap[VIRT_HIGHMEM].base, machine->ram); + memory_region_add_subregion(address_space_mem, + virt_memmap[VIRT_PM].base, iomem); + + /* + * We do not support flash operation, just loading bios.bin as raw BIO= S. + * Please use -L to set the BIOS path and -bios to set bios name. + */ + + if (kernel_filename) { + loaderparams.cpu_freq =3D get_cpu_freq_hz(); + loaderparams.ram_size =3D ram_size; + loaderparams.kernel_filename =3D kernel_filename; + loaderparams.kernel_cmdline =3D kernel_cmdline; + loaderparams.initrd_filename =3D initrd_filename; + loaderparams.kernel_entry =3D load_kernel(env); + + init_boot_rom(); + init_boot_param(); + } else { + filename =3D qemu_find_file(QEMU_FILE_TYPE_BIOS, + machine->firmware ?: LOONGSON3_BIOSNAME); + if (filename) { + bios_size =3D load_image_targphys(filename, + virt_memmap[VIRT_BIOS_ROM].bas= e, + virt_memmap[VIRT_BIOS_ROM].siz= e); + g_free(filename); + } else { + bios_size =3D -1; + } + + if ((bios_size < 0 || bios_size > virt_memmap[VIRT_BIOS_ROM].size)= && + !kernel_filename && !qtest_enabled()) { + error_report("Could not load MIPS bios '%s'", machine->firmwar= e); + exit(1); + } + + fw_conf_init(ram_size); + } + + loongson3_virt_devices_init(machine, liointc); +} + +static void mips_loongson3_virt_machine_init(MachineClass *mc) +{ + mc->desc =3D "Loongson-3 Virtualization Platform"; + mc->init =3D mips_loongson3_virt_init; + mc->block_default_type =3D IF_IDE; + mc->max_cpus =3D LOONGSON_MAX_VCPUS; + mc->default_ram_id =3D "loongson3.highram"; + mc->default_ram_size =3D 1600 * MiB; + mc->kvm_type =3D mips_kvm_type; + mc->minimum_page_bits =3D 14; +} + +DEFINE_MACHINE("loongson3-virt", mips_loongson3_virt_machine_init) diff --git a/MAINTAINERS b/MAINTAINERS index 29c5e3b13c3..da3bd3f752a 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1161,6 +1161,7 @@ S: Maintained F: hw/intc/loongson_liointc.c F: hw/mips/loongson3_bootp.c F: hw/mips/loongson3_bootp.h +F: hw/mips/loongson3_virt.c =20 Boston M: Paul Burton diff --git a/hw/mips/Kconfig b/hw/mips/Kconfig index 64ef42dd3fd..aadd436bf4e 100644 --- a/hw/mips/Kconfig +++ b/hw/mips/Kconfig @@ -32,6 +32,18 @@ config FULOONG bool select PCI_BONITO =20 +config LOONGSON3V + bool + imply VIRTIO_VGA + imply QXL if SPICE + select SERIAL + select GOLDFISH_RTC + select LOONGSON_LIOINTC + select PCI_DEVICES + select PCI_EXPRESS_GENERIC_BRIDGE + select MSI_NONBROKEN + select FW_CFG_MIPS + config MIPS_CPS bool select PTIMER diff --git a/hw/mips/meson.build b/hw/mips/meson.build index b06329f7ff7..ee19cc204dc 100644 --- a/hw/mips/meson.build +++ b/hw/mips/meson.build @@ -2,7 +2,7 @@ mips_ss.add(files('mips_int.c')) mips_ss.add(when: 'CONFIG_FW_CFG_MIPS', if_true: files('fw_cfg.c')) mips_ss.add(when: 'CONFIG_FULOONG', if_true: files('fuloong2e.c')) -mips_ss.add(when: 'CONFIG_LOONGSON3V', if_true: files('loongson3_bootp.c')) +mips_ss.add(when: 'CONFIG_LOONGSON3V', if_true: files('loongson3_bootp.c',= 'loongson3_virt.c')) mips_ss.add(when: 'CONFIG_JAZZ', if_true: files('jazz.c')) mips_ss.add(when: 'CONFIG_MALTA', if_true: files('gt64xxx_pci.c', 'malta.c= ')) mips_ss.add(when: 'CONFIG_MIPSSIM', if_true: files('mipssim.c')) --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) client-ip=209.85.221.52; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f52.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707156; cv=none; d=zohomail.com; s=zohoarc; b=A6NCPbZEaLvXVj2xRhCumiFkIOlJc59IQMDe2d/2zyurnn9bwGIl/o9/CP4Te/CXtD87Ax9jUUI84TasrkYdSjpIwtY6kdAz1mrwvqsuPxhYxhpE1SnaOSlp+euy3YsiMFp5oseONLKzK7m3hOawHfxDFFNgDypru1kRvYlsWtA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707156; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=K0vkRCguef4QqSP1VfhMnrwC6mUwpGXd0wHoeU0fPcQ=; b=OU16nzywA4ILjPHklhrc7TXF7Rb+15Y6+VO/XLnAo9do6f0wxLnzCMlLthvgy8A6sRSPgyufkwG98adiPpY54UOQyqQD16preiJhmTL7ziG+FZErvv7tPD/lRLXAyo2Gh9j6WBDUWUvfdjPq2RUgZIBGDsE+4pQFwPNyfRu2gvk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) by mx.zohomail.com with SMTPS id 1609707156046754.3922819918815; Sun, 3 Jan 2021 12:52:36 -0800 (PST) Received: by mail-wr1-f52.google.com with SMTP id t30so29499173wrb.0 for ; Sun, 03 Jan 2021 12:52:35 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id j2sm85989859wrt.35.2021.01.03.12.52.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=K0vkRCguef4QqSP1VfhMnrwC6mUwpGXd0wHoeU0fPcQ=; b=bjrAyAQgFUiAPrYpxahwww4iG3ixfY57pqkGA6Pdyz/CmMkAQfJEbNPkoXTz7cdUE4 BBFUXbPWuwG/Iy7z+PXYMRyAohD16OTMxHjmAOBgKwy7WVBSDxFyTa/dXQtu/WwhokvA bQbkwlyR9hHBMwYOdHMzd8kvdLbonlkeUB3cJw5MunCfnKQg1EQAJLVy3ZUGtX7VS39y RPVHkx6HyMLqVPBBJan3wtS/+qSQSna596Ir4iiXCm+KFqJI+1I/JkZsd1z+Wp8aO8lU 8XiT5kpt9eCIqFjmityoK938OifsNs1SMN0TJ64a+lzfusKEi+8zThRbAs23IRRP4zlI 4Pww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=K0vkRCguef4QqSP1VfhMnrwC6mUwpGXd0wHoeU0fPcQ=; b=pgwjV4kYn0lgKQC8PVs3nbu2+zz8kVTZTIXmtLnVSJMcBJNhJ3qNP6YiWQwXmmR5k3 F1tfDFAoCeLl6fTcM0YiGnNh3VXoPOx/N3Eq+Gdu2BoXWITWKtxDOrQHdl8ZqQxAk16D QOolkltkecvuRgC3CwE6wutzHdgn0FKkCf31nJOPC/F+Mt1r8V+tdJW3fk0N/mkvLpy4 RAdIIrmiew0dFj+c5dg+2lfTHsN8IWG52Q/uAuin//uYBjj783OMA2Z0l+eyr7h2qIL3 Mmwf9t4Q9nwTSQ1vURpwJPSCkwWMRFd0KtKupLccLZztTF8CHaEe5K4cfSIypfycMdsk /MMA== X-Gm-Message-State: AOAM533QDJZL9FksbiyThwX/kHejOiLVKQSX80M32wMC885zmc4K2CCU qgmyW2VnyNny/V055nqKA5k= X-Google-Smtp-Source: ABdhPJy+ZIsRcfE2h8raU+9Qw6ERxGKxEvw7Is1YWiTgTiHBpuMN4fXtbHNrl+loJ/L+0kShdhoZhA== X-Received: by 2002:adf:e452:: with SMTP id t18mr74188482wrm.177.1609707154312; Sun, 03 Jan 2021 12:52:34 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 27/35] docs/system: Update MIPS machine documentation Date: Sun, 3 Jan 2021 21:50:13 +0100 Message-Id: <20210103205021.2837760-28-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Huacai Chen Update MIPS machine documentation to add Loongson-3 based machine descripti= on. Signed-off-by: Huacai Chen Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201221110538.3186646-6-chenhuacai@kernel.org> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- docs/system/target-mips.rst | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/system/target-mips.rst b/docs/system/target-mips.rst index cd2a931edf9..138441bdec1 100644 --- a/docs/system/target-mips.rst +++ b/docs/system/target-mips.rst @@ -84,6 +84,16 @@ The Fuloong 2E emulation supports: =20 - RTL8139D as a network card chipset =20 +The Loongson-3 virtual platform emulation supports: + +- Loongson 3A CPU + +- LIOINTC as interrupt controller + +- GPEX and virtio as peripheral devices + +- Both KVM and TCG supported + The mipssim pseudo board emulation provides an environment similar to what the proprietary MIPS emulator uses for running Linux. It supports: =20 --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) client-ip=209.85.128.47; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f47.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707160; cv=none; d=zohomail.com; s=zohoarc; b=i/YSlDRXRWZyWCti3Fq1sOMjw7C0KNB442f4G+ygFJzHRXo6fOk2btV7nB0zb7vqj+/Q3K6kO+xO76y1KDqeljnnTVh0AeQJfIpqeRhm6s3HbcPsUo674gTzTb7r68J4iAVtmFkC5VxTJux7XTPToDsYASueCB+XzJ1VCZJ1Fqo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707160; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=D+Fl/Dw4XP4aoCncdK2UwY3/wzGCugYvGzMarlg1iC8=; b=Tg/MqLoo3WMeev2plbMIIynDmLBn9ond2UxZMHVFkQtiDfKsS4clZYwittDWXLQ5O/1wJleGolANLSlQNy3I+bK8/H3y/Yold6dV4I3H/20/Yv5kDhi/6Y75ckxic1awxc3w/1CU/BSHwsnBpHDYS+Em3w2K8ZmCWXs+JjKxDHM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) by mx.zohomail.com with SMTPS id 1609707160822607.1076874172854; Sun, 3 Jan 2021 12:52:40 -0800 (PST) Received: by mail-wm1-f47.google.com with SMTP id c133so15948345wme.4 for ; Sun, 03 Jan 2021 12:52:40 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id g5sm85019499wro.60.2021.01.03.12.52.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=D+Fl/Dw4XP4aoCncdK2UwY3/wzGCugYvGzMarlg1iC8=; b=pTqcQybfUzRheClpfoNh+tYTwYPB3I+xXKFwGBwHPKRVu6adzG5N3ioPEErbs8AoYa qILRZpG9MtfA38LX62bAvgOf4Vs8VIrKvzSArxjhuX6hkxOodRApI4inIOYq32nmyQoO rI1FxZGxnbCldwtAi5f08MIyUpW2msyGPAhJm+bAEpx2h0+tEaI3mtovMsZtDT1earOk Utq9rQc4jaDlplw0O50VS0/cQEWwprnT95ipq9Ixy0J0gGI+rBj0wBrurVPmTOMEk+K7 1bTi3JhqwmCv4lGt96gUweKBIxx5mZgZdnIE8E2hYEa7x1OR77e3CaVSBpmb/6HaAFia XjAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=D+Fl/Dw4XP4aoCncdK2UwY3/wzGCugYvGzMarlg1iC8=; b=HnJlqjaXWBJPzCVPj7Ezl/mwVlypILg0PtCG0KR51jTYtyfyF6gWVw99A4XOxdOSEn BTVfnVMSQdTjDCzBcBL1EVV8hDttSE4KaB5uFSr6GFpGwPpQfrzT7ZkfCyT27bdKlhkF Wo9LYcs3/Da5tBgTU+M6hIdd5ioXqNJcEq6PEEyHk5m4cijmDANkuaTzqwpatsyiAmy1 iI++8u27cW7ZyMq6Ja8MCR/wi3l0XGbPhvOYGwOeBnStcseNqQ/4WYIzBKPc+ECoNQ72 2N7qxK2U5FN7qbxNwq2vl2EN4t2b7qCfA2JvfCARr8JcTDDHHYrJZXxOcln0x6ChInhl 7JiQ== X-Gm-Message-State: AOAM532PHCRYJDZSKa50zhIlrdvTmmKOn3zgN17OQAsOuMe0hRFSqjWM 390pEnjfLo5UuEWxDoDse4s= X-Google-Smtp-Source: ABdhPJxBLMd1TrbIQvIMvz4IAbq0BX06B9javWRCgrTuxXejbrdUC03xLUmBOl0DJsqeeR+e6trC1Q== X-Received: by 2002:a1c:4954:: with SMTP id w81mr23981942wma.60.1609707159005; Sun, 03 Jan 2021 12:52:39 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 28/35] hw/mips: Make bootloader addresses unsigned Date: Sun, 3 Jan 2021 21:50:14 +0100 Message-Id: <20210103205021.2837760-29-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Jiaxun Yang Address should be unsigned anyway, otherwise it may carry calculations wrongly. Signed-off-by: Jiaxun Yang Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201215064200.28751-2-jiaxun.yang@flygoat.com> [PMD: Fixed typo and convert hw/mips/mipssim.c too] Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/mips/fuloong2e.c | 12 ++++++------ hw/mips/malta.c | 22 +++++++++++----------- hw/mips/mipssim.c | 8 ++++---- 3 files changed, 21 insertions(+), 21 deletions(-) diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index e5d08669069..804bef94cda 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -107,9 +107,9 @@ static void GCC_FMT_ATTR(3, 4) prom_set(uint32_t *prom_= buf, int index, va_end(ap); } =20 -static int64_t load_kernel(CPUMIPSState *env) +static uint64_t load_kernel(CPUMIPSState *env) { - int64_t kernel_entry, kernel_high, initrd_size; + uint64_t kernel_entry, kernel_high, initrd_size; int index =3D 0; long kernel_size; ram_addr_t initrd_offset; @@ -118,8 +118,8 @@ static int64_t load_kernel(CPUMIPSState *env) =20 kernel_size =3D load_elf(loaderparams.kernel_filename, NULL, cpu_mips_kseg0_to_phys, NULL, - (uint64_t *)&kernel_entry, NULL, - (uint64_t *)&kernel_high, NULL, + &kernel_entry, NULL, + &kernel_high, NULL, 0, EM_MIPS, 1, 0); if (kernel_size < 0) { error_report("could not load kernel '%s': %s", @@ -180,7 +180,7 @@ static int64_t load_kernel(CPUMIPSState *env) } =20 static void write_bootloader(CPUMIPSState *env, uint8_t *base, - int64_t kernel_addr) + uint64_t kernel_addr) { uint32_t *p; =20 @@ -299,7 +299,7 @@ static void mips_fuloong2e_init(MachineState *machine) MemoryRegion *bios =3D g_new(MemoryRegion, 1); long bios_size; uint8_t *spd_data; - int64_t kernel_entry; + uint64_t kernel_entry; PCIDevice *pci_dev; PCIBus *pci_bus; ISABus *isa_bus; diff --git a/hw/mips/malta.c b/hw/mips/malta.c index 366f4fdfcde..7db009a3e96 100644 --- a/hw/mips/malta.c +++ b/hw/mips/malta.c @@ -616,8 +616,8 @@ static void network_init(PCIBus *pci_bus) } } =20 -static void write_bootloader_nanomips(uint8_t *base, int64_t run_addr, - int64_t kernel_entry) +static void write_bootloader_nanomips(uint8_t *base, uint64_t run_addr, + uint64_t kernel_entry) { uint16_t *p; =20 @@ -840,8 +840,8 @@ static void write_bootloader_nanomips(uint8_t *base, in= t64_t run_addr, * a2 - 32-bit address of the environment variables table * a3 - RAM size in bytes */ -static void write_bootloader(uint8_t *base, int64_t run_addr, - int64_t kernel_entry) +static void write_bootloader(uint8_t *base, uint64_t run_addr, + uint64_t kernel_entry) { uint32_t *p; =20 @@ -1003,7 +1003,7 @@ static void GCC_FMT_ATTR(3, 4) prom_set(uint32_t *pro= m_buf, int index, const char *string, ...) { va_list ap; - int32_t table_addr; + uint32_t table_addr; =20 if (index >=3D ENVP_NB_ENTRIES) { return; @@ -1014,7 +1014,7 @@ static void GCC_FMT_ATTR(3, 4) prom_set(uint32_t *pro= m_buf, int index, return; } =20 - table_addr =3D sizeof(int32_t) * ENVP_NB_ENTRIES + index * ENVP_ENTRY_= SIZE; + table_addr =3D sizeof(uint32_t) * ENVP_NB_ENTRIES + index * ENVP_ENTRY= _SIZE; prom_buf[index] =3D tswap32(ENVP_ADDR + table_addr); =20 va_start(ap, string); @@ -1023,9 +1023,9 @@ static void GCC_FMT_ATTR(3, 4) prom_set(uint32_t *pro= m_buf, int index, } =20 /* Kernel */ -static int64_t load_kernel(void) +static uint64_t load_kernel(void) { - int64_t kernel_entry, kernel_high, initrd_size; + uint64_t kernel_entry, kernel_high, initrd_size; long kernel_size; ram_addr_t initrd_offset; int big_endian; @@ -1042,8 +1042,8 @@ static int64_t load_kernel(void) =20 kernel_size =3D load_elf(loaderparams.kernel_filename, NULL, cpu_mips_kseg0_to_phys, NULL, - (uint64_t *)&kernel_entry, NULL, - (uint64_t *)&kernel_high, NULL, big_endian, EM_= MIPS, + &kernel_entry, NULL, + &kernel_high, NULL, big_endian, EM_MIPS, 1, 0); if (kernel_size < 0) { error_report("could not load kernel '%s': %s", @@ -1234,7 +1234,7 @@ void mips_malta_init(MachineState *machine) MemoryRegion *bios, *bios_copy =3D g_new(MemoryRegion, 1); const size_t smbus_eeprom_size =3D 8 * 256; uint8_t *smbus_eeprom_buf =3D g_malloc0(smbus_eeprom_size); - int64_t kernel_entry, bootloader_run_addr; + uint64_t kernel_entry, bootloader_run_addr; PCIBus *pci_bus; ISABus *isa_bus; qemu_irq cbus_irq, i8259_irq; diff --git a/hw/mips/mipssim.c b/hw/mips/mipssim.c index f2e62735255..f5d0da05aa1 100644 --- a/hw/mips/mipssim.c +++ b/hw/mips/mipssim.c @@ -60,9 +60,9 @@ typedef struct ResetData { uint64_t vector; } ResetData; =20 -static int64_t load_kernel(void) +static uint64_t load_kernel(void) { - int64_t entry, kernel_high, initrd_size; + uint64_t entry, kernel_high, initrd_size; long kernel_size; ram_addr_t initrd_offset; int big_endian; @@ -75,8 +75,8 @@ static int64_t load_kernel(void) =20 kernel_size =3D load_elf(loaderparams.kernel_filename, NULL, cpu_mips_kseg0_to_phys, NULL, - (uint64_t *)&entry, NULL, - (uint64_t *)&kernel_high, NULL, big_endian, + &entry, NULL, + &kernel_high, NULL, big_endian, EM_MIPS, 1, 0); if (kernel_size < 0) { error_report("could not load kernel '%s': %s", --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) client-ip=209.85.221.49; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f49.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707165; cv=none; d=zohomail.com; s=zohoarc; b=UMJqgtYC2gtljI1AORCAhg+mBnQRwnC9ql8i7sloQNWaGxL9JIlEwcKuYbsuBLsxyzdEHAdPgiQfb+q/wHgQOOxOr9hvZuVAWSvFqU44wDbUSTgy+oZjhagwgbM5p1nRjCyXVmAZ5EY5uKujLCNpRNGmAhhWKzHqBeMvAl1jx6Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707165; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Wl6SwD6rhHXZkyr+JvQ9IE37tD/v6VssJI8HTk5wOP0=; b=bNHeMKbjMuBIEJNLyd1jT2toogaec8uxpo3SrK8wAHc8G/nuljtWLe9K8Bac5utnE5GUfHBfSPjOJy38GR8GMKAdUdsHfLNvl9KskWfcxO8Fwxdu53LIS2pdRQMzUx8Vbu57foXvrFtdm2St61Lm9M0Ry4G0q/2ISxkKD2nIZcQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.49]) by mx.zohomail.com with SMTPS id 1609707165628143.49908193465672; Sun, 3 Jan 2021 12:52:45 -0800 (PST) Received: by mail-wr1-f49.google.com with SMTP id a12so29451050wrv.8 for ; Sun, 03 Jan 2021 12:52:45 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id k128sm30374711wma.43.2021.01.03.12.52.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Wl6SwD6rhHXZkyr+JvQ9IE37tD/v6VssJI8HTk5wOP0=; b=g55UkzV3Y/lYN54ws1yacJxa7HfsyjtRj3eIJBCYzHCbTA3Zm5LAUo67rp5VTzjJkh 8WVuEvn4O0ZYsxpZy9aq6ydGxPrNByMAVJxUnNlEoa3XRZMNQEonIYCBSLl7ZY6Y8392 MKMOH4/znsEYrFE8hEYD3bfScyqaLzM2OMLPdBjWFBFZDEWsIEE7tSv7ykl9T55WjP4d 1QmnJbo2PLtcO/zKQreQEIyTfRpxwd7c8jkYbPfOVx67H0ZlNCvi07f5z9TthiMBA82k rKcEZy2Vaqjgc3p+Il+cgDQHGxrDFtrtQhqKHGRorb+sWyxGUvQNSdvTbqlVEQrzg00P oHXg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=Wl6SwD6rhHXZkyr+JvQ9IE37tD/v6VssJI8HTk5wOP0=; b=Lps/wO4GEW7qe7/KSq+u4WzXCuXXDqarE3FCUnjQp6cG3PNxG/YaMfRvYNWwUpaqYq 65WH/J10zrDAYTtT9+m8JXun/AQrUzaPqtsnhAfk4On0TTI4nvri7kOGEj/3To3XvxhA Q8IECnhkYa69892UEjAuBnYoRiWsR+NeGQLK5+0sKyFASr2HrccPiFhoGRqlO7aVT7TM E+8gCS8pFjkD5XCh2p1n1dqrRX6ob7nnZ5d4DkFyhSSqitkADyEFSHT7HI7V4tQdUt3s rsTSgBMGDcElCRB79H0nZeEmpF7ZTgBHqvnw7Ci8fhq84FFTv7iKCN9X3wgw+nd3CX8b TwQg== X-Gm-Message-State: AOAM532GS4/IQD7lAXzHLbMLDhFDBb6w+NFV7xj+WoXkmYvhv3xWpR/n e13DOiAyHzio0BLQLrNPvpI= X-Google-Smtp-Source: ABdhPJzXGaXrdGPC+3cvkxXcPfxQek+zImMW4gFYHCImDgoiJbafi9FAheWVnzr47Vr5heFXpHODng== X-Received: by 2002:adf:eac7:: with SMTP id o7mr77876460wrn.23.1609707163837; Sun, 03 Jan 2021 12:52:43 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 29/35] hw/mips/malta: Use address translation helper to calculate bootloader_run_addr Date: Sun, 3 Jan 2021 21:50:15 +0100 Message-Id: <20210103205021.2837760-30-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Jiaxun Yang So it will sign extend adresses properly. Signed-off-by: Jiaxun Yang Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201215064200.28751-3-jiaxun.yang@flygoat.com> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/mips/malta.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/mips/malta.c b/hw/mips/malta.c index 7db009a3e96..1fbb8a32207 100644 --- a/hw/mips/malta.c +++ b/hw/mips/malta.c @@ -1302,9 +1302,9 @@ void mips_malta_init(MachineState *machine) /* For KVM we reserve 1MB of RAM for running bootloader */ if (kvm_enabled()) { ram_low_size -=3D 0x100000; - bootloader_run_addr =3D 0x40000000 + ram_low_size; + bootloader_run_addr =3D cpu_mips_kvm_um_phys_to_kseg0(NULL, ra= m_low_size); } else { - bootloader_run_addr =3D 0xbfc00000; + bootloader_run_addr =3D cpu_mips_phys_to_kseg0(NULL, RESET_ADD= RESS); } =20 /* Write a small bootloader to the flash location. */ --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.51 as permitted sender) client-ip=209.85.128.51; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f51.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.51 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707170; cv=none; d=zohomail.com; s=zohoarc; b=SFG59T+bxWzOKcO48qGCusLldZZDcrP+j/IrXhv4Vlx/OJU0tQkDDkXXllQ8wkWJuKmInxVDlty3t2tOVhGJE/7QNjkoE7CqF2yRK2COUN9jBOXYkpbAQBLfJEqf/ehbT9qnYZEnI8ofWr3l5gG2pEpDvc0X0umM34S40UoArsk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707170; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=uWpdd3Sx/wi+ql4s1airvlB9dKRon6b7AVg1n0LZsBA=; b=fC9JKmqaNNfoWQOkOs84+vq0A1EOGcGzEo0EqqXl3puq5j9uMjy9CsiRsjIwoeJtFk1X6OBo37xbacJtVXrCdJlkcRyW4T9mtINq6ovOpyZbPML7Tisszuq12zIAxtyGTN/f1Vib70uwvKkxq4R/Ca+c6DxQDmAAt84mlBGwSgg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.51 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) by mx.zohomail.com with SMTPS id 1609707170447337.99111518275504; Sun, 3 Jan 2021 12:52:50 -0800 (PST) Received: by mail-wm1-f51.google.com with SMTP id 3so16645226wmg.4 for ; Sun, 03 Jan 2021 12:52:49 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id a14sm85457898wrn.3.2021.01.03.12.52.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=uWpdd3Sx/wi+ql4s1airvlB9dKRon6b7AVg1n0LZsBA=; b=V94SLe2TgTDEnHDWM8BQr9oLweaINyB8a/PCHB6rt9HpyPBty+Q1lqx4NPt610sZmU 1/QKnrHE6Rr021p5i29XOznzsOTiM0s/SV87DICCvhTmgdZUb4ha2UiTJYimSmNXEUt5 YBzl99tmYJJlz06fescljQ2zOlxShxh+c3X8EX0Sjlrl6ccaWmsoH4hcqBKLR4Yo2Tha AbAKNORB7vK8vMryfmiZD6BhX/YNXxXfM3UgivciHsNqRcvabT//vkhPXCgvKt5GVQeE 8hArvBRjgmbhJknzMTK0UMGJmsQKJqhaJ1Hvirt5yQp3d25qgA8X6Gz9C1ZxrmSRTdkl RmsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=uWpdd3Sx/wi+ql4s1airvlB9dKRon6b7AVg1n0LZsBA=; b=jgPYpf+LfDbJ9cfUxih8kBq8OajQjOPd8R4pPUZduPV6RV/Qv4JxNF173Q+4czYHzj jrH+8ZgmE/Evg0ixSeGIggZ7FCXXCkrj8DrQ0Ma+MuKiHPBLyS+37OsX85RldCunjNef 4WeQ4FkzLkT4gXqChTX9/W/aoqTChbhI28ORe1V28FxHGBEOh7vMGsgeXgaB/0s4iaQG d2wyu8rIvHEGuY/VIGl5Km38C4Lpevqr6fRh3AZ7b48EhYLhYBZWM7qVZLaFcQHfHdcR jaIo1+NJPS7HpBDdR/vxTDdnLbvtPu5yP3mrWEgDM/njdDP+SkX7QGlRyZY6dK8nWghQ cbPQ== X-Gm-Message-State: AOAM531lUTpteMpJgfL4WKom/9YRfAYrXCXkTIJ8CLnTZnwCRD96sVLK GAxBscFHU1m8iNfH6nN7vTY= X-Google-Smtp-Source: ABdhPJy+iu3U7Oxma+ZQY3heHkU3cAmrIoP8Hvo2T1xWAsTNYYRXoahEtAaNLWwz3cDxcgOuJuJ5yw== X-Received: by 2002:a1c:e902:: with SMTP id q2mr23830505wmc.143.1609707168596; Sun, 03 Jan 2021 12:52:48 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 30/35] hw/mips: Use address translation helper to handle ENVP_ADDR Date: Sun, 3 Jan 2021 21:50:16 +0100 Message-Id: <20210103205021.2837760-31-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Jiaxun Yang It will signed extend vaddr properly. Signed-off-by: Jiaxun Yang Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201215064200.28751-4-jiaxun.yang@flygoat.com> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/mips/fuloong2e.c | 24 +++++++++--------- hw/mips/malta.c | 62 ++++++++++++++++++++++----------------------- 2 files changed, 43 insertions(+), 43 deletions(-) diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index 804bef94cda..8bc854130ed 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -49,7 +49,8 @@ =20 #define DEBUG_FULOONG2E_INIT =20 -#define ENVP_ADDR 0x80002000l +#define ENVP_PADDR 0x2000 +#define ENVP_VADDR cpu_mips_phys_to_kseg0(NULL, ENVP_PADDR) #define ENVP_NB_ENTRIES 16 #define ENVP_ENTRY_SIZE 256 =20 @@ -100,7 +101,7 @@ static void GCC_FMT_ATTR(3, 4) prom_set(uint32_t *prom_= buf, int index, } =20 table_addr =3D sizeof(int32_t) * ENVP_NB_ENTRIES + index * ENVP_ENTRY_= SIZE; - prom_buf[index] =3D tswap32(ENVP_ADDR + table_addr); + prom_buf[index] =3D tswap32(ENVP_VADDR + table_addr); =20 va_start(ap, string); vsnprintf((char *)prom_buf + table_addr, ENVP_ENTRY_SIZE, string, ap); @@ -172,8 +173,7 @@ static uint64_t load_kernel(CPUMIPSState *env) prom_set(prom_buf, index++, "modetty0=3D38400n8r"); prom_set(prom_buf, index++, NULL); =20 - rom_add_blob_fixed("prom", prom_buf, prom_size, - cpu_mips_kseg0_to_phys(NULL, ENVP_ADDR)); + rom_add_blob_fixed("prom", prom_buf, prom_size, ENVP_PADDR); =20 g_free(prom_buf); return kernel_entry; @@ -199,14 +199,14 @@ static void write_bootloader(CPUMIPSState *env, uint8= _t *base, stl_p(p++, 0x3c040000); /* ori a0, a0, 2 */ stl_p(p++, 0x34840002); - /* lui a1, high(ENVP_ADDR) */ - stl_p(p++, 0x3c050000 | ((ENVP_ADDR >> 16) & 0xffff)); - /* ori a1, a0, low(ENVP_ADDR) */ - stl_p(p++, 0x34a50000 | (ENVP_ADDR & 0xffff)); - /* lui a2, high(ENVP_ADDR + 8) */ - stl_p(p++, 0x3c060000 | (((ENVP_ADDR + 8) >> 16) & 0xffff)); - /* ori a2, a2, low(ENVP_ADDR + 8) */ - stl_p(p++, 0x34c60000 | ((ENVP_ADDR + 8) & 0xffff)); + /* lui a1, high(ENVP_VADDR) */ + stl_p(p++, 0x3c050000 | ((ENVP_VADDR >> 16) & 0xffff)); + /* ori a1, a0, low(ENVP_VADDR) */ + stl_p(p++, 0x34a50000 | (ENVP_VADDR & 0xffff)); + /* lui a2, high(ENVP_VADDR + 8) */ + stl_p(p++, 0x3c060000 | (((ENVP_VADDR + 8) >> 16) & 0xffff)); + /* ori a2, a2, low(ENVP_VADDR + 8) */ + stl_p(p++, 0x34c60000 | ((ENVP_VADDR + 8) & 0xffff)); /* lui a3, high(env->ram_size) */ stl_p(p++, 0x3c070000 | (loaderparams.ram_size >> 16)); /* ori a3, a3, low(env->ram_size) */ diff --git a/hw/mips/malta.c b/hw/mips/malta.c index 1fbb8a32207..9afc0b427bf 100644 --- a/hw/mips/malta.c +++ b/hw/mips/malta.c @@ -62,7 +62,8 @@ #include "hw/mips/cps.h" #include "hw/qdev-clock.h" =20 -#define ENVP_ADDR 0x80002000l +#define ENVP_PADDR 0x2000 +#define ENVP_VADDR cpu_mips_phys_to_kseg0(NULL, ENVP_PADDR) #define ENVP_NB_ENTRIES 16 #define ENVP_ENTRY_SIZE 256 =20 @@ -656,29 +657,29 @@ static void write_bootloader_nanomips(uint8_t *base, = uint64_t run_addr, /* li a0,2 */ } =20 - stw_p(p++, 0xe3a0 | NM_HI1(ENVP_ADDR - 64)); + stw_p(p++, 0xe3a0 | NM_HI1(ENVP_VADDR - 64)); =20 - stw_p(p++, NM_HI2(ENVP_ADDR - 64)); - /* lui sp,%hi(ENVP_ADDR - 64) */ + stw_p(p++, NM_HI2(ENVP_VADDR - 64)); + /* lui sp,%hi(ENVP_VADDR - 64) */ =20 - stw_p(p++, 0x83bd); stw_p(p++, NM_LO(ENVP_ADDR - 64)); - /* ori sp,sp,%lo(ENVP_ADDR - 64) */ + stw_p(p++, 0x83bd); stw_p(p++, NM_LO(ENVP_VADDR - 64)); + /* ori sp,sp,%lo(ENVP_VADDR - 64) */ =20 - stw_p(p++, 0xe0a0 | NM_HI1(ENVP_ADDR)); + stw_p(p++, 0xe0a0 | NM_HI1(ENVP_VADDR)); =20 - stw_p(p++, NM_HI2(ENVP_ADDR)); - /* lui a1,%hi(ENVP_ADDR) */ + stw_p(p++, NM_HI2(ENVP_VADDR)); + /* lui a1,%hi(ENVP_VADDR) */ =20 - stw_p(p++, 0x80a5); stw_p(p++, NM_LO(ENVP_ADDR)); - /* ori a1,a1,%lo(ENVP_ADDR) */ + stw_p(p++, 0x80a5); stw_p(p++, NM_LO(ENVP_VADDR)); + /* ori a1,a1,%lo(ENVP_VADDR) */ =20 - stw_p(p++, 0xe0c0 | NM_HI1(ENVP_ADDR + 8)); + stw_p(p++, 0xe0c0 | NM_HI1(ENVP_VADDR + 8)); =20 - stw_p(p++, NM_HI2(ENVP_ADDR + 8)); - /* lui a2,%hi(ENVP_ADDR + 8) */ + stw_p(p++, NM_HI2(ENVP_VADDR + 8)); + /* lui a2,%hi(ENVP_VADDR + 8) */ =20 - stw_p(p++, 0x80c6); stw_p(p++, NM_LO(ENVP_ADDR + 8)); - /* ori a2,a2,%lo(ENVP_ADDR + 8) */ + stw_p(p++, 0x80c6); stw_p(p++, NM_LO(ENVP_VADDR + 8)); + /* ori a2,a2,%lo(ENVP_VADDR + 8) */ =20 stw_p(p++, 0xe0e0 | NM_HI1(loaderparams.ram_low_size)); =20 @@ -878,18 +879,18 @@ static void write_bootloader(uint8_t *base, uint64_t = run_addr, stl_p(p++, 0x24040002); /* addiu a0, zero, 2 */ } =20 - /* lui sp, high(ENVP_ADDR) */ - stl_p(p++, 0x3c1d0000 | (((ENVP_ADDR - 64) >> 16) & 0xffff)); - /* ori sp, sp, low(ENVP_ADDR) */ - stl_p(p++, 0x37bd0000 | ((ENVP_ADDR - 64) & 0xffff)); - /* lui a1, high(ENVP_ADDR) */ - stl_p(p++, 0x3c050000 | ((ENVP_ADDR >> 16) & 0xffff)); - /* ori a1, a1, low(ENVP_ADDR) */ - stl_p(p++, 0x34a50000 | (ENVP_ADDR & 0xffff)); - /* lui a2, high(ENVP_ADDR + 8) */ - stl_p(p++, 0x3c060000 | (((ENVP_ADDR + 8) >> 16) & 0xffff)); - /* ori a2, a2, low(ENVP_ADDR + 8) */ - stl_p(p++, 0x34c60000 | ((ENVP_ADDR + 8) & 0xffff)); + /* lui sp, high(ENVP_VADDR) */ + stl_p(p++, 0x3c1d0000 | (((ENVP_VADDR - 64) >> 16) & 0xffff)); + /* ori sp, sp, low(ENVP_VADDR) */ + stl_p(p++, 0x37bd0000 | ((ENVP_VADDR - 64) & 0xffff)); + /* lui a1, high(ENVP_VADDR) */ + stl_p(p++, 0x3c050000 | ((ENVP_VADDR >> 16) & 0xffff)); + /* ori a1, a1, low(ENVP_VADDR) */ + stl_p(p++, 0x34a50000 | (ENVP_VADDR & 0xffff)); + /* lui a2, high(ENVP_VADDR + 8) */ + stl_p(p++, 0x3c060000 | (((ENVP_VADDR + 8) >> 16) & 0xffff)); + /* ori a2, a2, low(ENVP_VADDR + 8) */ + stl_p(p++, 0x34c60000 | ((ENVP_VADDR + 8) & 0xffff)); /* lui a3, high(ram_low_size) */ stl_p(p++, 0x3c070000 | (loaderparams.ram_low_size >> 16)); /* ori a3, a3, low(ram_low_size) */ @@ -1015,7 +1016,7 @@ static void GCC_FMT_ATTR(3, 4) prom_set(uint32_t *pro= m_buf, int index, } =20 table_addr =3D sizeof(uint32_t) * ENVP_NB_ENTRIES + index * ENVP_ENTRY= _SIZE; - prom_buf[index] =3D tswap32(ENVP_ADDR + table_addr); + prom_buf[index] =3D tswap32(ENVP_VADDR + table_addr); =20 va_start(ap, string); vsnprintf((char *)prom_buf + table_addr, ENVP_ENTRY_SIZE, string, ap); @@ -1122,8 +1123,7 @@ static uint64_t load_kernel(void) prom_set(prom_buf, prom_index++, "38400n8r"); prom_set(prom_buf, prom_index++, NULL); =20 - rom_add_blob_fixed("prom", prom_buf, prom_size, - cpu_mips_kseg0_to_phys(NULL, ENVP_ADDR)); + rom_add_blob_fixed("prom", prom_buf, prom_size, ENVP_PADDR); =20 g_free(prom_buf); return kernel_entry; --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) client-ip=209.85.128.48; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f48.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707175; cv=none; d=zohomail.com; s=zohoarc; b=SsCj8GWT9Av1+rQAevFyRfn9HGbNZLIkHHRl77fmNkqRpsW7pFbwdH9doLYKPpfivVaQgySJKS8uQ/ZBuaf3o2lXgV/P3ji8soOBYOYq9i+eQTFwT2QPx00Um2C0MT8y5iwaopCmgtDKe/m61roVbtf7uSHohFzPEHUPDjRxhmM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707175; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=SFAz4qf5qaCWKujyQyG6OOIUDn6IbjDbTkCHcatjAvg=; b=YNDfmE7vsOdATCZJo8Zh+gsZHvQzu1irxUZJC1xIJTtWheIrUbWcwB5kvhqs76WcCXjtPZtJdDjlFpV7cJW8nafBHl8eSyj3EtoG9XtnRFqprQ/i1u2aPmyXZliODCy8totqHRxn8GeNMBWViYj9SbtrEtibVK3QQhrGvwBbFCo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) by mx.zohomail.com with SMTPS id 1609707175548209.66574773674768; Sun, 3 Jan 2021 12:52:55 -0800 (PST) Received: by mail-wm1-f48.google.com with SMTP id a6so15950052wmc.2 for ; Sun, 03 Jan 2021 12:52:54 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id y68sm30951535wmc.0.2021.01.03.12.52.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=SFAz4qf5qaCWKujyQyG6OOIUDn6IbjDbTkCHcatjAvg=; b=Qv0K95oqoQJ8LexfNC758XMQlPXcSfZ082u+jZ0a5vegM22/gmZue3n4opqp9s/Cfu XmMQQQyA668R2KsWkRLhmE9zdxySMEfA1vIBHtxkFcqcLRBzuelXMg83SkD0SfCFUMeW hETK7eYQ54Ev/2pDpGEg0M8ksUaRdqjZavgQX1do5veTwsLuieIIXsZf+wOKTY8WvD5a P7Mf5A9t1LNB29DgkoWv27AFVKM4jq1gHKPD0viqlh/7vcQeuF7uvEU2oLRrAPE0hZCI mezOcKaBbBnB0vhwhQQUW5rmlfS4KbfLZsucu1dky7vUzqo1On10LEXmkOczDoEmZRcE BOfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=SFAz4qf5qaCWKujyQyG6OOIUDn6IbjDbTkCHcatjAvg=; b=Y9km3a9i4VYX1B+w3trxV6XauYYubMlF9MdOCo3D0yqhHzpWB4hFHrfAcagA1UDIFf ODssEvLq97nz14WshcCBFhTI0NUdXN59mCTRfjyA8hnHKYULUkoVbT8lNDgkbx9OAm5o mBybj6KH9Q/ZGDH8c6Bk+Jl/55uJ4xDtYcwjMAja/X0OFQJDb7n4K3+w8rmfegwZYHDW H3NltyUsjEeXLBBTMyn/WFmIDHfe4ip3xpi2uFtiEaEJstUndCdFpFRDXshXmrnpGRdT Zmp8bnze9IA5BEjF9/NUuMfeOa3jcLZbMcdGQG9gFEs5rf614dM1afzJLi5077D5s+Td rlBA== X-Gm-Message-State: AOAM531EIZV0SB3oJ7nE5XHdW1kMF3jT4N7OReQFk+upc8C8sEWkeuKH ynqP8Vr+JLoJ2iE5VxI/+R4= X-Google-Smtp-Source: ABdhPJyKgEpcR4OFwS2r6N9M6o8+t2f+fdUMO+Rc5FGfgZSf1ZHRWPikzjS/y/84NnZV8uTtcpN/lw== X-Received: by 2002:a1c:2bc2:: with SMTP id r185mr23449693wmr.13.1609707173335; Sun, 03 Jan 2021 12:52:53 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 31/35] hw/mips/fuloong2e: Remove define DEBUG_FULOONG2E_INIT Date: Sun, 3 Jan 2021 21:50:17 +0100 Message-Id: <20210103205021.2837760-32-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Jiaxun Yang Seems useless.... Fixes: 051c190bce5 ("MIPS: Initial support of fulong mini pc (machine const= ruction)") Signed-off-by: Jiaxun Yang Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Huacai Chen Message-Id: <20201224031750.52146-2-jiaxun.yang@flygoat.com> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/mips/fuloong2e.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index 8bc854130ed..c5a20b64621 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -47,8 +47,6 @@ #include "sysemu/reset.h" #include "qemu/error-report.h" =20 -#define DEBUG_FULOONG2E_INIT - #define ENVP_PADDR 0x2000 #define ENVP_VADDR cpu_mips_phys_to_kseg0(NULL, ENVP_PADDR) #define ENVP_NB_ENTRIES 16 --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) client-ip=209.85.221.52; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f52.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707179; cv=none; d=zohomail.com; s=zohoarc; b=Xd77RAHWYRR5WI/FMAwAXJLQE+u5vPmQQ8ckyHDMdktk0EiMYRqM5caqduDtXHaLwRx3NC7vryg8j6pJjwOKL4DPKBmD/9JgOzeIpubWfJAMWant8C6a7NLNEczd2CQwPUYedSY91bGFjH7O/2Yd0XQUO5hUfhgFj/JLb/1lwUk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707179; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=meSqN7OJPd3TgjBqquEQOj/uXRGmM+5t7QO346SCy+g=; b=eief5N+MjkYkxD+UsJasA2+2M5lHCAkfDEAKfrnbsH6pG9qOi0Ys2l/7BSyB/1TrvuW4VwcWiFyB1llOuEVz/9dcB/jtA/VLZiBsqyG2XPds6K7XUsXE6vFNizuTNc8yVM++v+0/vGX+osXAadgtSyPX1YpNWlQJfs4d+WZcjIQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) by mx.zohomail.com with SMTPS id 1609707179727291.24846761341973; Sun, 3 Jan 2021 12:52:59 -0800 (PST) Received: by mail-wr1-f52.google.com with SMTP id i9so29483335wrc.4 for ; Sun, 03 Jan 2021 12:52:59 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id o23sm92694575wro.57.2021.01.03.12.52.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:52:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=meSqN7OJPd3TgjBqquEQOj/uXRGmM+5t7QO346SCy+g=; b=QNDrdfznMEklBSk6Ta72f8L4Y9MLqQIVzhq+LBjmjc+WmCmTweY92XKfpDAR8TxoYN prZl9LF1SKUZUl0Map0zdgqxeMDWMl6PsHaYuUOE4crkI5kZ4p1yX2xrlX6Vv7LFHpYS sak8QCbZns6APMxKiFgi53FtWZllyfL/9n6y82uS2ayZTLBFXOUuIa5t4ljX6FcANW0g G590N4A4etLhJf9nAO5SBRv4ovcsMn+qGmq8QfCXuwZ80MF/e0EuzbB8x0swn8ihsmgW Mp1vTjU6YtEawh+VZN1kI8Tcqv2J8SgJw0Wel8mOIL8HvkbpomQWghe2AWozqSPC2bbc rnwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=meSqN7OJPd3TgjBqquEQOj/uXRGmM+5t7QO346SCy+g=; b=Tf6Ks26PFfY4DuQpU02inpnpJgW48YnyikHRQihwZV3qI12tlMzHf7GQ9jUDk/ustb VFrfk67tKdsfOOHWzh1uC4vxZVM5Rgh+lVtp9I96q80tNYOffWqdpkodqcKoPKDTLQOn mxe6Q2/5cULcnTu24dZdMIw2AZzhpqGP8ddkvrYimxsFyqGXXFvNwCzt2XHqKQLpMMKn LaQkdV54YmpApnMuC5QfMPELmB0SX1ijEcIpOrmoS3VsTUFERzWyVKZ5Zhoq0Xy7rjxp 5rNrIJuUn5KVQHM962jOIQ67jXkiEMieJZ127K3pP2IVERjEf1AeXOyelyldlRM3NBGl waFQ== X-Gm-Message-State: AOAM532WZSoZxlqIreftGNE16Lkv5StIAv5txjvD68Q0Wz5ITrzbzg// D+h8pJje0t9FYiPkukAJIzE= X-Google-Smtp-Source: ABdhPJxNjKX3uvCfz4zQG1T/IfvM0yoqrGAqo8kYWRJa2UCPr69R+KyTjIv7BgjdC8u9Ex0/oZkWHA== X-Received: by 2002:adf:e452:: with SMTP id t18mr74189265wrm.177.1609707177972; Sun, 03 Jan 2021 12:52:57 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 32/35] hw/mips/fuloong2e: Replace faulty documentation links Date: Sun, 3 Jan 2021 21:50:18 +0100 Message-Id: <20210103205021.2837760-33-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Jiaxun Yang Websites are downing, but GitHub may last forever. Loongson even doesn't recogonize 2E as their products nowadays.. Signed-off-by: Jiaxun Yang Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Huacai Chen Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201224031750.52146-3-jiaxun.yang@flygoat.com> Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/mips/fuloong2e.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index c5a20b64621..09169a9aa99 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -14,8 +14,8 @@ * Fuloong 2e mini pc is based on ICT/ST Loongson 2e CPU (MIPS III like, 8= 00MHz) * https://www.linux-mips.org/wiki/Fuloong_2E * - * Loongson 2e user manual: - * http://www.loongsondeveloper.com/doc/Loongson2EUserGuide.pdf + * Loongson 2e manuals: + * https://github.com/loongson-community/docs/tree/master/2E */ =20 #include "qemu/osdep.h" @@ -60,14 +60,7 @@ * PMON is not part of qemu and released with BSD license, anyone * who want to build a pmon binary please first git-clone the source * from the git repository at: - * http://www.loongson.cn/support/git/pmon - * Then follow the "Compile Guide" available at: - * http://dev.lemote.com/code/pmon - * - * Notes: - * 1, don't use the source at http://dev.lemote.com/http_git/pmon.git - * 2, use "Bonito2edev" to replace "dir_corresponding_to_your_target_hardw= are" - * in the "Compile Guide". + * https://github.com/loongson-community/pmon */ #define FULOONG_BIOSNAME "pmon_2e.bin" =20 --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.53 as permitted sender) client-ip=209.85.221.53; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f53.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.53 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1609707184; cv=none; d=zohomail.com; s=zohoarc; b=ipXLN9s6ESfGs8u9lL8+phPTsfaQxv8H+gPU8M1iNUq376yahAK8GApz2IfQYfLMYR9hCpss9OEPN4iigaG8676vQ4UQANEFEGG+zoCKOMjR7jiGtnyO2fR0iAunqQyRN5uxuMKHTjvAsSVh/wdQYnp/xXhfz0EnlhU6Z7KLdas= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707184; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=++A8QyhfHVVuAMN0I1H2zT5i0vv1msO5pWbKg3DeMDU=; b=TJ+QfMsNXwuqFbNIitsC+Yo/+dfgZWL79EapIvIcSjSVB9M/9iXU3Gm5lnQcIN/M/KBF6gtVH6A+v1Q6ktuBwIWp7arfPdBJhj4WfnaWVRtZl+1vAn9DCD2VUfltjgLghXYwXEfMJ2KMYPsHxyLV+cPzhheS3bk+YrBYZVprS2Q= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.53 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wr1-f53.google.com (mail-wr1-f53.google.com [209.85.221.53]) by mx.zohomail.com with SMTPS id 1609707184461160.27887097115206; Sun, 3 Jan 2021 12:53:04 -0800 (PST) Received: by mail-wr1-f53.google.com with SMTP id d13so29447119wrc.13 for ; Sun, 03 Jan 2021 12:53:03 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id i18sm88713927wrp.74.2021.01.03.12.53.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:53:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=++A8QyhfHVVuAMN0I1H2zT5i0vv1msO5pWbKg3DeMDU=; b=FzFGZdNuOmkJFlKA0l9YAjyciBxkviGWNJQh1CPRQWGNf4p4dFJvyILC6Wg6d9eMIN ioiNpqATX3GanV0pmlva9aBYP9KOABg/UZ9z2Qa7/Q19SisBnLWRhLjC1EuXzL5ZhoMi ALvTOxQjyvNdzuplFpo8FlgDT1Tm2n+Q0TMPzVTapJPjqyPKyP95jikOHMyapXJ31AJW nbIPLllcSgkhcW6VqTXjUnlzE36EpFMJIxNSVlzkSeOcWYDv+4agm4sLVxBOj7LO5/io 4xX+o/ih+pCX/HgbaZmreN2Zgs1MVyTREaQO18WWYIer8Hgy5ITJek2Q89PZOriiuVT1 sQkw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=++A8QyhfHVVuAMN0I1H2zT5i0vv1msO5pWbKg3DeMDU=; b=gL1Qs/V1Xm0VSTWEdd2MiPxR0rvRZPYGYA8BhgKTvJdhcURxlgEVa7yOWDl/iUo6lT 8onb5dAhgu67290rKBKafaaO9AVNy/nRkkMttwWwT7r3G6l3LlurBAcEpNBDgDFvQZ3P SS39AyymAu7XEnM7fDwtIylXbmNh74BuA8JWm4eIJwEzMzbNq2p2DzJizNMBHOJ779Jl AnD5iXaW2mPEoBAary0cKIhVIQYkgNcp9EGYTx3FHpenboF5AM7F14v8FXL3CR4zC8Sb B6Rk5aCEGYUheSnyDxIU2EslLjgJShHFI5ND+c8oAjNBZXz3lJKeXQ/bxWS3ND2nFuj9 KJww== X-Gm-Message-State: AOAM531Oxv5lPz+uvNf9u5JUMwvoqy71+Btn4DydHpnGFHRaIOXjEBnp I4qnua+IqnnEP/J2YKF+Mm8= X-Google-Smtp-Source: ABdhPJyveFCP6Kq6mbet3u8jM6XyXnPuio7ul5XovpieKNJgTl1uRfQ2swTdTWswyg16q8HHzr+8FQ== X-Received: by 2002:a5d:65ca:: with SMTP id e10mr77323545wrw.42.1609707182747; Sun, 03 Jan 2021 12:53:02 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 33/35] hw/mips/fuloong2e: Remove unused env entry Date: Sun, 3 Jan 2021 21:50:19 +0100 Message-Id: <20210103205021.2837760-34-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Jiaxun Yang modetty is not handled by kernel and the parameter here seems unreasonable. Signed-off-by: Jiaxun Yang Message-Id: <20201224031750.52146-6-jiaxun.yang@flygoat.com> Reviewed-by: Philippe Mathieu-Daud=C3=A9 [PMD: Do not remove busclock] Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/mips/fuloong2e.c | 1 - 1 file changed, 1 deletion(-) diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index 09169a9aa99..9b44ac6cf97 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -161,7 +161,6 @@ static uint64_t load_kernel(CPUMIPSState *env) prom_set(prom_buf, index++, "busclock=3D33000000"); prom_set(prom_buf, index++, "cpuclock=3D100000000"); prom_set(prom_buf, index++, "memsize=3D%"PRIi64, loaderparams.ram_size= / MiB); - prom_set(prom_buf, index++, "modetty0=3D38400n8r"); prom_set(prom_buf, index++, NULL); =20 rom_add_blob_fixed("prom", prom_buf, prom_size, ENVP_PADDR); --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.43 as permitted sender) client-ip=209.85.221.43; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f43.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.43 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707189; cv=none; d=zohomail.com; s=zohoarc; b=AqlQDJ8ciIrSYEcIHx9F1p1pndtlV4Nofy1PG9/LlZyTUH2AExnx+ah2iHGamYUMlRKI8WYO7JSPqwm3nZm54vbCsMApPzPvYpNNkvQlDbDUCp+2JVW5nmCdSqq9O3KJ91Pg0X4bNp252QBZh7EcGtsvqiuTSZco8je2axBA8Os= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707189; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Omfw76hY3844Y9bacXeVCDYHAMRLixZrIVClYxgLMv4=; b=J2jPd2eOXOey/Kx/YBqcYi5b5XS5WgbxetHLDHx1PWmAzPJ6m+o2BmjHm6YAMV05Rh+YGao5gj5ApjAvpEQR81irHchkS5hcMecGHHj06j2/MOK7FlwvNk4Y1GqEoifYDYvywUE+udi4en2MKOqVss1YbSWSBMjhxG8PrPON1P0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.43 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) by mx.zohomail.com with SMTPS id 1609707189175605.0082761923625; Sun, 3 Jan 2021 12:53:09 -0800 (PST) Received: by mail-wr1-f43.google.com with SMTP id r7so29458594wrc.5 for ; Sun, 03 Jan 2021 12:53:08 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id v1sm29176820wmj.31.2021.01.03.12.53.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:53:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Omfw76hY3844Y9bacXeVCDYHAMRLixZrIVClYxgLMv4=; b=MyOGgJwTQshcoYZEbauhdm0dtPNPGqTZEckd0BxS1cTfbaulIP33kGtdowDHmW+Ytk 97TSMenDuEYyvTQrw6PpeHvxRX9DT6PXnTeGFlOlx5KsbozW6vVuqjgfZO9URW698WWu 7O2A6avC1cEtVwcwEY2sg9DA+eq1Bba5xPe1UOfm875GujUdANY5u7+8pIZ+Ut7TY5Wf 89S8opK7Q5RB9aTQOkzfA0eRdThvZrZiT8lXJPbnJh3tPoD8jQXfvxISFN8+/NGjnyz3 viy2PxxXLzn3pfhUwMSF3PjlIU8B9lM6KMCADFiToPsa+63M2nZHFE8CGg3SFF1RjZGX s9vw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=Omfw76hY3844Y9bacXeVCDYHAMRLixZrIVClYxgLMv4=; b=OsaqUgVEFH41+NnBZndTgLj9G6F0TQBMAyz3/n3DkvkkJc+Ui9CTyzi+BNuT6fWAjg uJ4CL376L+Y4Fzyeaxec9/3fVWtuH2gzEE62iEtB5gUZi5/DEY2FUh550Ul9KvhH3jLV ysveQVAFZLUKkt89bSml2FS9jAd213hOQwIWWR5XdPriWC+xSPHz/OhGTqkMCbFdyCQS SrvSg9b5//r3suD6PhALIZeA+XLIDzSk8Y69BvjFVYzZuwbj0MBIcJvmx5GotDjei/Nk 3L2rVE/H18H88u6RKZVRJcyWqSz9/62XHUhEFtCJrDhS53xCkk323U3kcDKLhivwTEr1 WlfA== X-Gm-Message-State: AOAM531+epbs4eF2s+lQSZIOmaTQ4vxj4GXdwtsdOeWvh9tfs0gK+5n7 0KmYnPAKq+fla7g0BX8pUb4= X-Google-Smtp-Source: ABdhPJzNAQD1NWOUcthC4P+yxUFupCJvUTNCnA2dzbnevgQNJJ662bcqmvWNryjx2fMSZ3SZtZ6fxA== X-Received: by 2002:adf:8185:: with SMTP id 5mr74922900wra.44.1609707187308; Sun, 03 Jan 2021 12:53:07 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 34/35] hw/mips/fuloong2e: Correct cpuclock in PROM environment Date: Sun, 3 Jan 2021 21:50:20 +0100 Message-Id: <20210103205021.2837760-35-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Jiaxun Yang Missed in 3ca7639ff00 ("hw/mips/fuloong2e: Set CPU frequency to 533 MHz"), we need to tell the kernel the correct clock. Fixes: 3ca7639ff00 ("hw/mips/fuloong2e: Set CPU frequency to 533 MHz"). Signed-off-by: Jiaxun Yang Reviewed-by: Huacai Chen Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201224031750.52146-7-jiaxun.yang@flygoat.com> [PMD: Reworded] Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/mips/fuloong2e.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index 9b44ac6cf97..29805242caa 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -99,7 +99,7 @@ static void GCC_FMT_ATTR(3, 4) prom_set(uint32_t *prom_bu= f, int index, va_end(ap); } =20 -static uint64_t load_kernel(CPUMIPSState *env) +static uint64_t load_kernel(MIPSCPU *cpu) { uint64_t kernel_entry, kernel_high, initrd_size; int index =3D 0; @@ -159,7 +159,7 @@ static uint64_t load_kernel(CPUMIPSState *env) =20 /* Setup minimum environment variables */ prom_set(prom_buf, index++, "busclock=3D33000000"); - prom_set(prom_buf, index++, "cpuclock=3D100000000"); + prom_set(prom_buf, index++, "cpuclock=3D%u", clock_get_hz(cpu->clock)); prom_set(prom_buf, index++, "memsize=3D%"PRIi64, loaderparams.ram_size= / MiB); prom_set(prom_buf, index++, NULL); =20 @@ -330,7 +330,7 @@ static void mips_fuloong2e_init(MachineState *machine) loaderparams.kernel_filename =3D kernel_filename; loaderparams.kernel_cmdline =3D kernel_cmdline; loaderparams.initrd_filename =3D initrd_filename; - kernel_entry =3D load_kernel(env); + kernel_entry =3D load_kernel(cpu); write_bootloader(env, memory_region_get_ram_ptr(bios), kernel_entr= y); } else { filename =3D qemu_find_file(QEMU_FILE_TYPE_BIOS, --=20 2.26.2 From nobody Tue Nov 18 09:17:01 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.49 as permitted sender) client-ip=209.85.128.49; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f49.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1609707193; cv=none; d=zohomail.com; s=zohoarc; b=iPsYTMg3z6abr3By4f1YqO44TLRhnQmd6qaB71V0gh4ICvNBl/LezXTZNf5Bojmoy4tEsLlfja1f1ppRnkY11r/DUT2DvltS2uuztA3WI6tXyv95pgI/i18xAMwQzbXKniS4L06Yb2DEpTD4TIqeWfnYD9Jbc3UQFpWXfpb1NS8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609707193; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=my6K0NqjNxjwesMHeWH/nrBf3hS8ACbQAhuQ5qNjI9U=; b=FfbUi8sIXNczUnuaNC+imxOTirVUXc1YpSMHU9CXCmils/dsUh3aB77Gb+4NjfNsfuSyhr+T42DfwedCp10RCp+hLIB8xkxmzwioPaDECWACQTlPVqb2EFunxWE2IMmoPHjr9CcFrdFrwhQZurSFZMDZhGZ/szamS+6lYpA+jWA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.49 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) by mx.zohomail.com with SMTPS id 1609707193988537.8161064253243; Sun, 3 Jan 2021 12:53:13 -0800 (PST) Received: by mail-wm1-f49.google.com with SMTP id 3so16647558wmg.4 for ; Sun, 03 Jan 2021 12:53:13 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (194.red-83-57-172.dynamicip.rima-tde.net. [83.57.172.194]) by smtp.gmail.com with ESMTPSA id u66sm30239300wmg.30.2021.01.03.12.53.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 03 Jan 2021 12:53:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=my6K0NqjNxjwesMHeWH/nrBf3hS8ACbQAhuQ5qNjI9U=; b=BaBLUCrnYR+B4v33nLFz8D8IMXxaQbgN46mPqbG8l3aAVRbmU6HDzWGc8jqObTvUQD f4RWNBwpqIpwaXk2NAc0/laA5iZEqPCK4UYRHPEVOgesWXSwMXeaIDuu2GUr+UedsZBq 3Z2EHIpGdfenRkyGpQCfLjBHD6CmLVNiiZG3zbl6egEiSI067FAhN13eAjaDxu0LzxDR Z2ro/qq8WPFOj3GULnUsAGm82LSLl6bB47zZL764lwXX8cNfBrXx9+A07aI+0ezEbIeZ 3LJ9b/tZ1Nz70+ci8YXazPM5pJTk6PGnx8ap5mOmSXWjG20KiEsI9UNzuzhJ5kXsEKun A93A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=my6K0NqjNxjwesMHeWH/nrBf3hS8ACbQAhuQ5qNjI9U=; b=aqOB+UtenJjSmBYtzPb44lUf0qfSdLlDi/3D6vam3kamVjECoMaCwvv9KFRfcrwz4N C2YBQkuK5vjXnzUnH6Jc7vIQk97IJAO7aKjgSfoz/iT14fXUr2oAc1SFZ08Ql8H9LrAm avtyVOhSBUUnazAE9L47LJakeTUGIvtr1W563lD3ii1m+5XqD06+SPFkaRic03FPxWcT e1SPNcEWfS198k3/1MF0w39lNpBFoIRhBlLo6iCqLBjfaUEbs7y2ir+L0EPgRuv/vJNO zGVrVNii7b3rrJnBxwRrrJonxLLrNa2cvxdxw+WQf/opsovXbV7vjiDWfhJTUe9aiiIP lehw== X-Gm-Message-State: AOAM530eNXfDfB58IL75+gZj+mZ7xA6P+lZxS4qtJ+rtPEj8EU+sl/o1 pBkeBvCkElQcgN9eSeWtBc4= X-Google-Smtp-Source: ABdhPJz0kwQk7cscAxNXjjxIj23ALFIM9Mf3WzW5tIIuCf+iZ8cIOS4Y9xCUuWx2kBQ1/Mf3iTZjkg== X-Received: by 2002:a7b:c145:: with SMTP id z5mr23909157wmi.164.1609707192192; Sun, 03 Jan 2021 12:53:12 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Aurelien Jarno , Huacai Chen , Jiaxun Yang , Wainer dos Santos Moschetta , Willian Rampazzo , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 35/35] tests/acceptance: Test boot_linux_console for fuloong2e Date: Sun, 3 Jan 2021 21:50:21 +0100 Message-Id: <20210103205021.2837760-36-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210103205021.2837760-1-f4bug@amsat.org> References: <20210103205021.2837760-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From: Jiaxun Yang The kernel comes from debian archive so it's trusted. Invoking the test can be done as follows: $ avocado --show=3Dapp,console run -t machine:fuloong2e tests/acceptance/ (1/1) tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_mips6= 4el_fuloong2e: console: [ 0.000000] Initializing cgroup subsys cpuset console: [ 0.000000] Initializing cgroup subsys cpu console: [ 0.000000] Initializing cgroup subsys cpuacct console: [ 0.000000] Linux version 3.16.0-6-loongson-2e (debian-kernel= @lists.debian.org) (gcc version 4.8.4 (Debian 4.8.4-1) ) #1 Debian 3.16.56-= 1+deb8u1 (2018-05-08) console: [ 0.000000] memsize=3D256, highmemsize=3D0 console: [ 0.000000] CpuClock =3D 533080000 console: [ 0.000000] bootconsole [early0] enabled console: [ 0.000000] CPU0 revision is: 00006302 (ICT Loongson-2) console: [ 0.000000] FPU revision is: 00000501 console: [ 0.000000] Checking for the multiply/shift bug... no. console: [ 0.000000] Checking for the daddiu bug... no. console: [ 0.000000] Determined physical RAM map: console: [ 0.000000] memory: 0000000010000000 @ 0000000000000000 (usa= ble) console: [ 0.000000] memory: 0000000004000000 @ 0000000010000000 (res= erved) console: [ 0.000000] memory: 0000000003ffffff @ 000000001c000001 (res= erved) console: [ 0.000000] Initrd not found or empty - disabling initrd console: [ 0.000000] Zone ranges: console: [ 0.000000] DMA [mem 0x00000000-0x00ffffff] console: [ 0.000000] Normal [mem 0x01000000-0x0fffffff] console: [ 0.000000] Movable zone start for each node console: [ 0.000000] Early memory node ranges console: [ 0.000000] node 0: [mem 0x00000000-0x0fffffff] console: [ 0.000000] Reserving 0MB of memory at 0MB for crashkernel console: [ 0.000000] Primary instruction cache 64kB, VIPT, direct mapp= ed, linesize 32 bytes. console: [ 0.000000] Primary data cache 64kB, 4-way, VIPT, no aliases,= linesize 32 bytes console: [ 0.000000] Unified secondary cache 512kB 4-way, linesize 32 = bytes. console: [ 0.000000] Built 1 zonelists in Zone order, mobility groupin= g on. Total pages: 16327 console: [ 0.000000] Kernel command line: printk.time=3D0 console=3Dtt= yS0 PASS (2.27 s) Signed-off-by: Jiaxun Yang Reviewed-by: Wainer dos Santos Moschetta Reviewed-by: Willian Rampazzo Reviewed-by: Huacai Chen Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20201224031750.52146-9-jiaxun.yang@flygoat.com> [PMD: Added command line example] Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- tests/acceptance/boot_linux_console.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/tests/acceptance/boot_linux_console.py b/tests/acceptance/boot= _linux_console.py index cc6ec0f8c15..fb41bb7144b 100644 --- a/tests/acceptance/boot_linux_console.py +++ b/tests/acceptance/boot_linux_console.py @@ -170,6 +170,27 @@ def test_mips64el_malta(self): console_pattern =3D 'Kernel command line: %s' % kernel_command_line self.wait_for_console_pattern(console_pattern) =20 + def test_mips64el_fuloong2e(self): + """ + :avocado: tags=3Darch:mips64el + :avocado: tags=3Dmachine:fuloong2e + :avocado: tags=3Dendian:little + """ + deb_url =3D ('http://archive.debian.org/debian/pool/main/l/linux/' + 'linux-image-3.16.0-6-loongson-2e_3.16.56-1+deb8u1_mips= el.deb') + deb_hash =3D 'd04d446045deecf7b755ef576551de0c4184dd44' + deb_path =3D self.fetch_asset(deb_url, asset_hash=3Ddeb_hash) + kernel_path =3D self.extract_from_deb(deb_path, + '/boot/vmlinux-3.16.0-6-loongs= on-2e') + + self.vm.set_console() + kernel_command_line =3D self.KERNEL_COMMON_COMMAND_LINE + 'console= =3DttyS0' + self.vm.add_args('-kernel', kernel_path, + '-append', kernel_command_line) + self.vm.launch() + console_pattern =3D 'Kernel command line: %s' % kernel_command_line + self.wait_for_console_pattern(console_pattern) + def test_mips_malta_cpio(self): """ :avocado: tags=3Darch:mips --=20 2.26.2