From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489084; cv=none; d=zohomail.com; s=zohoarc; b=asPJtiNYUShFj6NOR/kMMTrPOYl7QmHdJjYcNrtwGIhn1YdqfKExBQAcHYIxAkB2KJdkCQmVm1D8xjUmG/mQkT17MzQFItOmtyQMvVCZ05A871rUrqUm0KFwnrrGIh/HAINRMrsiqZG3RajJAKNJSPnFlrTai3E1oIq8XQGWydY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489084; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=TtSSxc4Ah1ot2GgQBdeTXSOp3+KBMfYLcFsfHrMmRLk=; b=iJZtB3O8BDF4mR/WsDM+6H5X3Ey92JenGo662xF1Ph2eLmRgNwsMNTPfoBZiki1dhvhQPgWXNTJQtux3bIandph68/P4JFywA4HqDfRKRRvlZNUPehaLJurkN7rZmzh/lAsGTczZ06rQEJKYR35QaKYdpOIt5vWDd/3MNW8dKpY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489084249294.29506589243636; Mon, 2 Mar 2026 14:04:44 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBM5-0000Jg-V7; Mon, 02 Mar 2026 17:03:09 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBM4-0000Hp-84 for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:08 -0500 Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBM2-00016V-I5 for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:07 -0500 Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-439b7c2788dso963085f8f.1 for ; Mon, 02 Mar 2026 14:03:06 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488984; x=1773093784; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=TtSSxc4Ah1ot2GgQBdeTXSOp3+KBMfYLcFsfHrMmRLk=; b=f1rmWHumNZ3vV0LVp0UkUYP9Spj/mt4wwLrkG9c9qPhs1xKgXymg6FErL/NQmb/nSA sQDONW84Hm0R+2g51FkYHSXuKoKQPDP+LIMeQiJNqP3Y/wxyZwzitxwJWzsWkFtszd9c oC/V+YPv0JGaxLvN3Sx5/zMiasat97sg5nr8ZYG+mz9l8CYPFd0aREmzvpqHGOQE+ENn zK7S+z4I9K0T9c9s7wYobGgMp5YJ90mNv/tOaEwETB/PrfHOrcnAzoeMhlBqRsuv2sqr Dgqbj3U4fGh2L1xUyzk/UOdNAWDzX+2oMcFtqYd67AhxJzAUd9eblTOa4KCnQUUMI9sm E+UQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488984; x=1773093784; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=TtSSxc4Ah1ot2GgQBdeTXSOp3+KBMfYLcFsfHrMmRLk=; b=EFqgAO9zgZ5XNsMT4zJO1PxQMX1Hk/RCSMp2q8ZBwyXZ1nP8oOWOY3kAA3s0hWVwED 6OnKCdhcy6H2igEq1Jy5v0V7yz3ydvy56nbM8cgJgNxyJnOenuxsOnUDxVOWWjxl+dDN tovZxrq785XrHX7AW6PgGViMMz49E+Dyf/6juViTMS+asFWZt43/tDJUVyYcwT9dHVD8 /9Od/4YdGni8HnmMxn5b4YEK9CGOZFI4UGzLyi/erKxJCpnpeaN4oyRX/aejFrdF1bsG LTfcGkOeN4F+4tg3Wb9JxlwMsevzZtafRETdvfxvu6sf8lZgw+yr0VeHCi3mBsQM1cR3 1luw== X-Gm-Message-State: AOJu0Yx1qeESm2ZzEXwkPEwCyDxaS19MfUDXRj4B8ooz9x5igcQvPpqd BweBFdCfRMNfiMAS9B9q28J5aDi+l33KgVjprW51LXIKubpTuYKFlnfU6ySbaQ== X-Gm-Gg: ATEYQzz+GRE4UxGU/i/KEePwdRDlB8j+eYCdYUzyOmbgH11owfGBXs29RWS5TbCWf+F tMr+jt9Fmv+6ZbYNKFbO5/fSUAzTtPfbn0l6OzyaQ+gwVO+HiZQm3jrbK9rQEUJeFEfeop9SXCD 4OTfla0s5yr1nZld7KFiJ1tda8fE2al37ZnJS9HZmPBG1hHU8UJ5Zk3hUP9hNfO1NSfGZdwxko2 oY+UtRkVKKTLfNH+IIaGvjExdJB4SnPtTpRSfk1+fgAtn9o3kZHXfYunUIBkBdewH5b7Ss0ue1K nnqcYElUy2/mPqq2NU73uxYiiaU3cwNUr5SRsUSJHLaqBrZLWarkf9w0EUZBmLE/AJi4pWmQuOw oD9NhQMKgwK7x3Vv5+NYUU2ZfGRJtHW9jYP426skDW75eNCkxOtxO4Br86ZiGAPb7DCZObRqPYS ZLT2Eo+BoyQclGgXjkuqtjBVVTwRTK30cHd98DOQXFo4dKyo/JR7rBEyq21+NcdkV1/epLGYv9D eoxxyBrCpKA6SCYUyBn2l5O6otK5zgZsdIG7Fv4Xng0lS8= X-Received: by 2002:a05:6000:18a6:b0:439:b886:20cd with SMTP id ffacd0b85a97d-439b886219amr7543680f8f.16.1772488984307; Mon, 02 Mar 2026 14:03:04 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 01/12] hw/arm/Kconfig: Fix serial selection for NPCM8XX Date: Mon, 2 Mar 2026 23:02:43 +0100 Message-ID: <20260302220254.1166849-2-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42a; envelope-from=shentey@gmail.com; helo=mail-wr1-x42a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489086346158500 Content-Type: text/plain; charset="utf-8" CONFIG_SERIAL selects the internal TYPE_SERIAL device which is akin to an "IP block" that needs to be integrated with glue logic. In case of NPCM8XX this glue logic is TYPE_SERIAL_MM which the code uses already. Fix Kconfig to select CONFIG_SERIAL_MM which matches TYPE_SERIAL_MM. Fixes: ae0c4d1a1290 ("hw/arm: Add NPCM8XX SoC") Signed-off-by: Bernhard Beschow Reviewed-by: Peter Maydell --- hw/arm/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig index c66c452737..20e99e52b1 100644 --- a/hw/arm/Kconfig +++ b/hw/arm/Kconfig @@ -493,7 +493,7 @@ config NPCM8XX select SMBUS select PL310 # cache controller select NPCM7XX - select SERIAL + select SERIAL_MM select SSI select UNIMP =20 --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489123; cv=none; d=zohomail.com; s=zohoarc; b=hCWj/DpbVq0za6UeLP0sAANlvf5UQpYMIpeDb6o3ZGrJzGWedLur1T89RjVefhsyMDdPb3Hz3ZtUZ4b+Hq66pjWf4BzSkJI1i1fGkj8bNfD255wnI8eVpsVKtf4u6lFuDEUCG5zYSKOhwLnmZfqSb6zk+ZKN4KosSu10rQbaYPY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489123; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=a20X3LL6nOL1DHB0RkjcJ0CTq+OL5+eKSUsrTa1dqPQ=; b=XhvgJOx8kl1hjrs3OXnZUWOnbLZinAtTcr3b7U0HbZmqwzOAV+dcbAu6EDH01MNrJXG5W1ojEu2Pux5XecB8PA7w0vPjXAaKbppMNpiUybEALNSmaOzCZDEWHweBw+JpnnsThZ/TD2X0ioS/HHAyPT8BNMe/QAlqjlcFuzqv3CQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489123801997.4473105541787; Mon, 2 Mar 2026 14:05:23 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBM6-0000Jr-Ii; Mon, 02 Mar 2026 17:03:10 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBM5-0000Ib-9U for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:09 -0500 Received: from mail-wr1-x434.google.com ([2a00:1450:4864:20::434]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBM3-00016q-KB for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:09 -0500 Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-43991064db8so5136283f8f.2 for ; Mon, 02 Mar 2026 14:03:07 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488986; x=1773093786; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=a20X3LL6nOL1DHB0RkjcJ0CTq+OL5+eKSUsrTa1dqPQ=; b=MvjC4EyZ1YXn7IxuPGZ0gkeUXoxwkLpH2z16v8aU170tL0+/ZEcMNUhsjmcqZy7QV/ OwHFaPYiZMjrfrWoIkvzYf2m8IWgqpsx2KWDTFA+YhB4egUAsHPnKNFjk7x0omSWEs7X /Ui2muAcF7DQn36QQkBRTy3p5Jdx1fqA00y97wmYLEpjz38MAtPQL37F0AlFVTdoKtrH CgHIReAUEJs8BSBZyRI189j8BTtsHI5ITwgXfzS3vz02tpt2qC+XvxPiBMWKgX/nZo3z WU8uiFryrLbEYdt89f0lATjf8hGMaOmETMuYrus7ZZLbY+cORrfDdc+W2jDMgU6tn2to LOUA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488986; x=1773093786; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=a20X3LL6nOL1DHB0RkjcJ0CTq+OL5+eKSUsrTa1dqPQ=; b=S8lvnmpRajOBmSlHkAzBXBoY3wQ1Nzj040CSiDINbNn4g9WIGlz2RCB0liJft0/t4T gV51Xgb1ooRnlZ2BUAXtEKrr31g+6psKK/yI0oXjFIilpEOg/4rxHJNcmK9TTZXpsr2U YzemoHu5KIpndy0+zgByDDcrxHOvGRw4YUXn+zjbQr3nG5bip+S7tYAv1s2d4OzExL5L H8KHsGR/791aTy0YeEgKm7Tt5+V0Py1K3GXw/dDJ97+RTDK8IrHeP0uWz6NTWw+PRxV4 SOlYq23XKhbwiX12CkbvDrKCf7WO3ddqeBtuY5IQ5ig68qs5fnb2xd+LiBXZ6hk+azKz Q05Q== X-Gm-Message-State: AOJu0YyUT2BMN5QduX72FsQcSgcS/9smOeovtjArvwl7PUDS9yP7Szbk CBzyTODyZgAIs4yS5MLW5uTukYwDXSZ0CuLmLAdUBh3oXHRqYPaiesA1dFUL1A== X-Gm-Gg: ATEYQzznkO1VH0V+7m0xtgeu0U/NVyTDuMFiSBau/gjhyNCoyeQfOCBbyhBzeMIvIYI 6Q7kcf1a6RBiEfLmO28SFCmgilRUz/5A3Z+h6FGJBJDRraXeqLIJDjoC1bQoF2j5dETjy4j0YeF L9hmdzGqNaLGf5x/N0HoX0ys/XpcOGByP5ykPejtfjJ57pmGyWxMIUIKWTO0/OQlm65/C9SvYfz kPS21hgxzPhNutz9zUSsgS48s0lRDJBh86ve22oDoaoVA8L+wqbwQ9ET8msk6xB3LLjXQ+hZ+yS jDI1gHMVT/G+c1SlWz3/KBgkawdjDcMjAFWq+JV5q4/DX+iyXX/Na9/QUjyGyGu1GCD+Mq9bmyq JNzu0XWTMAmIcYyWAuax66S0Lk3aQyIZCdiYk7HLYFC9SznYx6suWKO7qOpXwBAZ2wSKI+IHEnG 4TwVitOc58WFVYcEJ/FVvadP+8sr15WhOcFuw9afzmX7W67aXDvM3I8Eh+k8KwX/nAAtaXI5hPt OhwdiAX6cvGDbhPkC91QDA/T4phXycddyl1UnwjvHZlYNc= X-Received: by 2002:adf:fa52:0:b0:439:ab3d:1c27 with SMTP id ffacd0b85a97d-439ab3d1e51mr12575085f8f.2.1772488985526; Mon, 02 Mar 2026 14:03:05 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 02/12] hw/char/serial: Remove explicit cast from void pointer Date: Mon, 2 Mar 2026 23:02:44 +0100 Message-ID: <20260302220254.1166849-3-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::434; envelope-from=shentey@gmail.com; helo=mail-wr1-x434.google.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FORGED_GMAIL_RCVD=1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489124224158500 Content-Type: text/plain; charset="utf-8" A void pointer asks for being casted, so C allows for omitting the explicit cast. Take advantage of that. Signed-off-by: Bernhard Beschow Reviewed-by: Peter Maydell --- hw/char/serial.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/hw/char/serial.c b/hw/char/serial.c index adbd1d1d4a..0f2e79dfba 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -715,7 +715,7 @@ static const VMStateDescription vmstate_serial_thr_ipen= ding =3D { =20 static bool serial_tsr_needed(void *opaque) { - SerialState *s =3D (SerialState *)opaque; + SerialState *s =3D opaque; return s->tsr_retry !=3D 0; } =20 @@ -734,7 +734,7 @@ static const VMStateDescription vmstate_serial_tsr =3D { =20 static bool serial_recv_fifo_needed(void *opaque) { - SerialState *s =3D (SerialState *)opaque; + SerialState *s =3D opaque; return !fifo8_is_empty(&s->recv_fifo); =20 } @@ -752,7 +752,7 @@ static const VMStateDescription vmstate_serial_recv_fif= o =3D { =20 static bool serial_xmit_fifo_needed(void *opaque) { - SerialState *s =3D (SerialState *)opaque; + SerialState *s =3D opaque; return !fifo8_is_empty(&s->xmit_fifo); } =20 @@ -769,7 +769,7 @@ static const VMStateDescription vmstate_serial_xmit_fif= o =3D { =20 static bool serial_fifo_timeout_timer_needed(void *opaque) { - SerialState *s =3D (SerialState *)opaque; + SerialState *s =3D opaque; return timer_pending(s->fifo_timeout_timer); } =20 @@ -786,7 +786,7 @@ static const VMStateDescription vmstate_serial_fifo_tim= eout_timer =3D { =20 static bool serial_timeout_ipending_needed(void *opaque) { - SerialState *s =3D (SerialState *)opaque; + SerialState *s =3D opaque; return s->timeout_ipending !=3D 0; } =20 @@ -803,7 +803,7 @@ static const VMStateDescription vmstate_serial_timeout_= ipending =3D { =20 static bool serial_poll_needed(void *opaque) { - SerialState *s =3D (SerialState *)opaque; + SerialState *s =3D opaque; return s->poll_msl >=3D 0; } =20 --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489122; cv=none; d=zohomail.com; s=zohoarc; b=EynkH3kNyqRvWK0T2K73MuHpFd5e1R0NDveBraXil4rtYtAMlCKVtdbviY06jcMFGIJlBG/QK4Jzh+s3YdM1lb5EwF1jfcSrilVGPoPRVhp3NXCKyn/TCzXNmipeDHkmamin+g5xUPThEtMELRiXOFBwNp/W2/3r2Df/MziTMF4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489122; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=/9Q4ujscL56Vj60CvB2c6SJCwK31JFBh4t887aTpkrQ=; b=BMj7MLSKatNvQ1ZsnbplMZ2y/c8fVmjN5Du34G87I5LxmuWLlCt5MGbM4xmwmSKs+U7cLcn6zHO7zMEEdT/E459Zwx4tlhAR1qoREOoY1U+je8H8nmydsGkMV24JywF+WqctC6DEJaCagqa2Iyl9O9cnVm86yijxUAjACt2zy4g= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489122072821.3431853715372; Mon, 2 Mar 2026 14:05:22 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBM8-0000Lo-Dh; Mon, 02 Mar 2026 17:03:12 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBM6-0000Jp-F0 for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:10 -0500 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBM4-00017A-Ut for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:10 -0500 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-439b5d78592so1421775f8f.0 for ; Mon, 02 Mar 2026 14:03:08 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488987; x=1773093787; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/9Q4ujscL56Vj60CvB2c6SJCwK31JFBh4t887aTpkrQ=; b=YTSqNU2iuKkmoUbTcxS+BBymp0dOdjvQWwabOuER/RYINJcRQPFExepsz29BJbAZj9 Xgu6se8YzCtKBAAo37wlL5Hoq5lWRREYU52mT3wYeDn2zY2rx0Pbkb0T61tz1jrWwEdV c3qHeLompUsChYoubcwD9JW0jyzMX61Iqrveg+0m8VpvsgK7KrcSuCvOElpvbRCvGQiS 82rA4FOWJqCZaRidMR1cTn+drPgJSE5As0D28L2L06e9pNaD01a3jSM8kn18oY0/hcrL VipQpqtgLNKAswo27i7ht7IR9+BIu8tQAP9y040g50XB3cqBx0nJuyBVSrmI7JCjp8Es zWXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488987; x=1773093787; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=/9Q4ujscL56Vj60CvB2c6SJCwK31JFBh4t887aTpkrQ=; b=p3b/upUpn9tjX+Tq3Dt7HRxOAjL6F+4XsG08b7sd7S2ulhPofK8fOnii+qkUgyJRYk d4ldTzCuloUYq2TMbOKDzZ/y1n8hX8o4CElu8lNPYSIXqkpApD8vCEvAzjZfYxpzGDMU PCfm5kS6F3vQ08gyy5XT6fdJBh9ISrPEiuJXgonAr6wQV8OXvG9JJq86shu+A/CDhJaM 370s055d35TFUU7s+tW747MUdqtbBisTqmf7FN8rSl5q/m9Eu8rLKy097YA9AP8XD5nJ K4P+LfCN/L0TK6LjsZmlnCXyJznhA71mrJ9b+053FH0cW7QS1BI6IGZtWZ/14BSy27gG guyQ== X-Gm-Message-State: AOJu0YyIKfae2QcViygZcRHqUqOtlXVXorUlIFUxEOMph7o74Tzd6Y7g ykX3TZsu1CGEesnOJICTHAoavFtx0ofX+Ip0mS0/APTRZOcz2SZJaSYJ2e+3JQ== X-Gm-Gg: ATEYQzwo5eXcdpKnl4LDyy3qxneNCH0R0CJSFQ68Gdu9o3vfAbKaUo9ZdIWVmWnEcVj THF2eRPRp340/TucFFVojtGsjjAPBuoiqgNcNfafcXA24/r7by0qbXP+noKJcySTzfUhy2rYNnS jQ9uWSU/c3pnIdfhl7bJQ8eKEti+Yo7llrEGiZJeP64tNKMtw8X5/ww7E6WcuK09JtHdSfAPo1O nCPqE67Gz+rNi4ccwO4Kn8wsUMK5LpJo/9b34X8xwLGOaQMvODGyiR5Ewy0vJoD4/ZocM6NuUpz XUrs2nuDOpMxK3yLGaxcHYrWVVOyYmIH/ewojVZx1l4GE7f2UEbsafNcabxakbEAwoXcxn+0DXw GiX+dGsmR5pi/JVK6/nwYZaH4ZUv5Ctmqnkxi1a4o6NB596+a7mkgvWBP1CCGMTlqmsCGbcskOX /EC3ZFi2hjXCs+5yMQYvC2DwdGdHGHYEdNTrDlPN9dtdQsN3otQTtoXDapRfz7cAPna/87fmXVv rA3dd6PXl7xxlGJRVkwyHSdA6bDvxo8XPiO6qtlSHXRxbc= X-Received: by 2002:adf:e586:0:b0:439:abcd:b317 with SMTP id ffacd0b85a97d-439abcdb61amr14182499f8f.14.1772488986717; Mon, 02 Mar 2026 14:03:06 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 03/12] hw/char/serial: Prefer fifo8 methods over open-coding Date: Mon, 2 Mar 2026 23:02:45 +0100 Message-ID: <20260302220254.1166849-4-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::431; envelope-from=shentey@gmail.com; helo=mail-wr1-x431.google.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FORGED_GMAIL_RCVD=1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489124255158500 Content-Type: text/plain; charset="utf-8" Use fifo8_is_empty() and fifo8_is_full() to improve readability of the code. Signed-off-by: Bernhard Beschow Reviewed-by: Peter Maydell --- hw/char/serial.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/hw/char/serial.c b/hw/char/serial.c index 0f2e79dfba..20f68fd2f8 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -239,7 +239,7 @@ static void serial_xmit(SerialState *s) if (s->fcr & UART_FCR_FE) { assert(!fifo8_is_empty(&s->xmit_fifo)); s->tsr =3D fifo8_pop(&s->xmit_fifo); - if (!s->xmit_fifo.num) { + if (fifo8_is_empty(&s->xmit_fifo)) { s->lsr |=3D UART_LSR_THRE; } } else { @@ -481,7 +481,7 @@ static uint64_t serial_ioport_read(void *opaque, hwaddr= addr, unsigned size) if(s->fcr & UART_FCR_FE) { ret =3D fifo8_is_empty(&s->recv_fifo) ? 0 : fifo8_pop(&s->recv_fifo); - if (s->recv_fifo.num =3D=3D 0) { + if (fifo8_is_empty(&s->recv_fifo)) { s->lsr &=3D ~(UART_LSR_DR | UART_LSR_BI); } else { timer_mod(s->fifo_timeout_timer, qemu_clock_get_ns(QEM= U_CLOCK_VIRTUAL) + s->char_transmit_time * 4); @@ -555,7 +555,7 @@ static uint64_t serial_ioport_read(void *opaque, hwaddr= addr, unsigned size) static int serial_can_receive(SerialState *s) { if(s->fcr & UART_FCR_FE) { - if (s->recv_fifo.num < UART_FIFO_LENGTH) { + if (!fifo8_is_full(&s->recv_fifo)) { /* * Advertise (fifo.itl - fifo.count) bytes when count < ITL, a= nd 1 * if above. If UART_FIFO_LENGTH - fifo.count is advertised the @@ -585,7 +585,7 @@ static void serial_receive_break(SerialState *s) /* There's data in recv_fifo and s->rbr has not been read for 4 char trans= mit times */ static void fifo_timeout_int (void *opaque) { SerialState *s =3D opaque; - if (s->recv_fifo.num) { + if (!fifo8_is_empty(&s->recv_fifo)) { s->timeout_ipending =3D 1; serial_update_irq(s); } --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489095; cv=none; d=zohomail.com; s=zohoarc; b=YPEUhmDs+rA6A+Zc0EaDDSUMJglBJPrvT81X8WFqv7as0JzWXeS0DughS3q38RPlRmmLb/0gllpHf6FaZRMYA8Mn2ULVmNtI6eC20KJ1Aa86FuWegXD11TfU7f1XYRXfT4/Xg6/EsYpsQQeo0KLlzjy0WvHbVIQMSgzGr2/u9Y4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489095; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=J3N+1yHcxqfmWgXhBpMNBjivWGghseKDEx+m36TEs5k=; b=nKxidczxfS5xZE1MWC32eTyKd44MFfwtoJfGjvcofag4+lU+NdUE53E9foS+0CD6j/3NXBonMOnb9A2bvRsEi1836R+ZeJdiXT4/UBGww+NJoL99PzyuffishRCvPayEMyHTjK8gkH5Ai11Y5RZaCaTsaTZDACwrt+VjtoodgRk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489095073408.86686266824415; Mon, 2 Mar 2026 14:04:55 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBM8-0000M4-Sv; Mon, 02 Mar 2026 17:03:12 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBM7-0000Kl-CZ for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:11 -0500 Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBM5-00017Y-V7 for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:11 -0500 Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-436e87589e8so4745277f8f.3 for ; Mon, 02 Mar 2026 14:03:09 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488988; x=1773093788; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=J3N+1yHcxqfmWgXhBpMNBjivWGghseKDEx+m36TEs5k=; b=OJD+LWYw+dIHip8psNfKrEkN4B6HVhsgBnDwUGKOMVMaJP+GBJlS7D1l+/odxPNe3a wgO1Usyu1PWufKRMSzYABsiAGxVQnjeianK5n+8IlY5ibfmkilGIKO2EZPugmEA3PrgV AkQJV726Yzjl+XtVNKTQnq6Wqn4Zh4z2H435QpifoJq2zaW53H9I78me2A6Pg4cUVFZW vw40Fs+HhH1JpMelsKkcnnxEq8M1KTodqB7e673TUhrCibh32LZUOA209qQ//i+oP1wQ FWm2sG/xG1ob7YsX91mgwBJn78SQqTPtTcELdHZ4caA28ML+Dfivd63bFE7NxeaDaM8d KIYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488988; x=1773093788; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=J3N+1yHcxqfmWgXhBpMNBjivWGghseKDEx+m36TEs5k=; b=eHiPnaOa10UWxN4VkUmW4u48VvSblkZxeO3zzpoVslug/r+b2NKlElynlna8I+QH1s dJDh4SR3S/pnkzn0lck736/5bKuzFXaaLUjX7JjrFD96RTaI8RIMPfezoXGJ+j4NONAU Po9ssZUuUSE1ddt45N2DqSG7nJKnbARg2VSnE/m3K0HKtVl7D29nswZzI3R680yPten7 5BA5TH5+ZiEHSuurvpz/YLRKOafaMi6mmJsdsH2EYaedIxzvpjrANALbQ1TgupKVc3vf SxgEMIX575DzfpXAHU3TN7z/tR4zCG66B4LNiQVy+pp5a8mwmBmpYjui8pqLmD5gfQRA cn+w== X-Gm-Message-State: AOJu0Yz67r1wWnZEXDjdfJ0rN1ucdUYqS5t666zYwkhN8kIVVYCfLXwj qWse1iVzBjN+ut+JAdJmuURHa3uNcaKwaLaTaa3V19dfcIhVpdoMrg/hs1CSyQ== X-Gm-Gg: ATEYQzw62F0IKLkYscFFQ4Wyy37Bd4BB4bkLw7uaX7mMffBLwt2NaGo6mOnGFDcQwNK +XNkC4iPvNX+6QybTkTog7waXxN1is8PIGWYq0R9zqyKPQb0tWfcLm54qFsYq9Vn/j0TEiE4t43 YwwbtFJvwGadpscRNPlwjbqmq/IBjSoDx6uJCrdN2tEvI/IvaiZlUiuqqZ65D55otfhXPVnrFBL mHymjxFiSyYmTvYzqkJB8Sf2e9y38RAIh0gGi9IHi+rb6xQ2t9V3paaERg16YxpTXscwiVHEkoC nDxhfoLO6DeXXq2fz9NyeN8i+LQD+VozUEqydlEyMEhFGQpayk5xHtFaRs+U787jK6n9D1O2bln X72ww7m4rHzIAgsrMc29THewn2Ww5ezQv7PWAFaRv8PHCkZ2CL2tj6X1IvoPhC7EFGF+aBrU24R TjJgmpSqo9sN+dERPUzWlMVXBOPPEfRwnpqDYPfoYPsmT46G5oxivKhTi8uzPHX3XOTILSqhEMj fFXVN8Vkl2XwfcPcuEruvAHtpFtiEamREkVMXz/yKPFUJiRbYlSGZCpYg== X-Received: by 2002:a05:6000:2c04:b0:439:b486:ba5e with SMTP id ffacd0b85a97d-439b486c3c9mr11043902f8f.51.1772488988094; Mon, 02 Mar 2026 14:03:08 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 04/12] hw/char/serial: Reuse fifo8_num_used() Date: Mon, 2 Mar 2026 23:02:46 +0100 Message-ID: <20260302220254.1166849-5-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::430; envelope-from=shentey@gmail.com; helo=mail-wr1-x430.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489096030158500 Content-Type: text/plain; charset="utf-8" Avoids accessing private fields of struct Fifo8. Now, TYPE_SERIAL only accesses struct Fifo8 through its methods. Signed-off-by: Bernhard Beschow Reviewed-by: Peter Maydell --- hw/char/serial.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/char/serial.c b/hw/char/serial.c index 20f68fd2f8..2c558cb9fc 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -128,7 +128,7 @@ static void serial_update_irq(SerialState *s) tmp_iir =3D UART_IIR_CTI; } else if ((s->ier & UART_IER_RDI) && (s->lsr & UART_LSR_DR) && (!(s->fcr & UART_FCR_FE) || - s->recv_fifo.num >=3D s->recv_fifo_itl)) { + fifo8_num_used(&s->recv_fifo) >=3D s->recv_fifo_itl)) { tmp_iir =3D UART_IIR_RDI; } else if ((s->ier & UART_IER_THRI) && s->thr_ipending) { tmp_iir =3D UART_IIR_THRI; @@ -563,8 +563,8 @@ static int serial_can_receive(SerialState *s) * the guest has a chance to respond, effectively overriding t= he ITL * that the guest has set. */ - return (s->recv_fifo.num <=3D s->recv_fifo_itl) ? - s->recv_fifo_itl - s->recv_fifo.num : 1; + return (fifo8_num_used(&s->recv_fifo) <=3D s->recv_fifo_itl) ? + s->recv_fifo_itl - fifo8_num_used(&s->recv_fifo) := 1; } else { return 0; } --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489028; cv=none; d=zohomail.com; s=zohoarc; b=mQ6BOEE3FWaDsEJGIj3Xr4Fj5S9UVv8Xq6osnqkuDEfrKZCLGmSn+qi2HBDHtCBriAaaks0BrDlkmE3KhORB3WfKPkoTHAIXQiWPO+op3mn6uQ3+/D4Hi5J9UfaJEhp3cnkmO59vqXrKEi3AeElFwlrJ7XvgLeybWYfCrRLv3Ok= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489028; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=PCgeZ4WT/UGV6AN+XwdgDAtAbtkm4Hs1MZFKN1R+k64=; b=AhGPcPs37dH+hsZEyWqrCIDnt3WSkD682EpJ/cyCgLKz5WkSaDDQuf4F9qxdwpAUgk/bM+twtr0f6pLdfmlzYgqbb5W8Wh02tF5XNkkvhDBPo40LFfvnfaKnLnG3dyL0zjyq4qyWiXGAONQa3B+uNK1+3dQTy403s09aprsOEhc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489028060409.6266283257768; Mon, 2 Mar 2026 14:03:48 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBM9-0000Mo-SH; Mon, 02 Mar 2026 17:03:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBM8-0000M0-OR for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:12 -0500 Received: from mail-wr1-x432.google.com ([2a00:1450:4864:20::432]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBM7-00017y-8I for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:12 -0500 Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-439b97a8a8cso1333523f8f.1 for ; Mon, 02 Mar 2026 14:03:10 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488989; x=1773093789; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PCgeZ4WT/UGV6AN+XwdgDAtAbtkm4Hs1MZFKN1R+k64=; b=MDegD4VRHG84wh2WjueUuHPBHS9tZecp0+AXyPwUrF0at9WPGAdH/PyW7Peb6qILBc TqwhfQ4E46EGAeVP0lOk+k3N7SQ/rRzlmsM6WJaXgwqkc7HsyyXZ7Jf922gSM9u67p1e ZgoG8tE7uRCtw8PJ8QT2nUil15YAldcnXZ8YvsOdxqSZLi1OGQZKSCrR2iEFi3GEhwU1 +JIS0CfleGnagbWuaKbcipmWMu4nxRuRBpVSW8NwRM/+pRzcmu62dmS2QQ6/1f/v9rT9 ZHd9C91XCZta0ksqLgvO3J0UqV7MXcKG5UGIVcPWoznQffJmZeZa8+9WBBJRPUa2LGLb 2AZw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488989; x=1773093789; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=PCgeZ4WT/UGV6AN+XwdgDAtAbtkm4Hs1MZFKN1R+k64=; b=vz6V36kLb4u+8duZjKGSH7cCCXr/G87TuHZeLTaPV0K8yuTuipvleXGz2HyfYZAZRf b+sDxMtPNAMWUjq1JajBucDX32teoDi2wyujuHQf29oumQCIv6I4nkfrFu8vZ0oGkPwz 0YatlSaHX23+CUqP1k+FHSKIUqEGrvMLitIiamX53/AysZ02wjAVY4MYGxnWTHRTkzVz wiQZFKfuBI4ZgQgR9TuMOMNNaGT2XRR7syY+LShwhSzgrJmuorenviH294FR5jgCCQBg 2/6sqJeRJhpakXPFs7VCjp4b7yH3yzamO0x7SrC3cGTHWpeA2scIME3/Ofve1UbKrybO Y+OA== X-Gm-Message-State: AOJu0YwWyozt/BHj/NDRKEk2ZUQX7EBNL9LE4bC3EkQ9qvpuvb9HCWe0 lwDQOzGBdBSwk9j+VgLWYh08kHIWRBLMLQBXUCkZty0rcQiI/zc3BmwiXi7hGA== X-Gm-Gg: ATEYQzzr6CG9oY529VdiGJH6qtZohkYMBPInYAiImzT7gYItvFIzahZMq+YRqC/FTvA 570qveFQeSkkLX2fOtdkeYZVOJB6w8EG104qkjcJ5sMFPXQiJm2Er18aKlNIZDW0Dtv7WFkTWoi JIwBLiJhdZbDtBe0FPijyD65Pzhk2ICqQHk06oq3LW2PQtJWiNvK6/kt44yxibmdiAUuQobuD4s FwZWclpDDwEN0O4xZ2PpSZnD2nmfAjVj0hW0dTdZsFsJwJkrcg4yQNVsNlmbwxYxYh4/tIWw3/y 3pzt6b/6lK8GYPKo6DQjyC4emZzdZddmkJjNRrkwZjjBi7BF7YAnus429MUzl04WBWSo+nO7uCl Rb+N7z6ZB4qf5PuPTLDd2hAkQ897rBqAQV2pXdP7hAjLLxWjYdGa97jfTS/gcNRsXEVWbgkiJyZ NeR1NUps+rXctvs/orUJBzqlLcMu6/EuPvUsDaIXKaeK6wB/DcK8yrFyUuDnlpwL30/dRgpML8/ qrWQBXpTApvRi7y//ILT+Viw0llrri4i/tNrcNFiUFijNY= X-Received: by 2002:a05:6000:1884:b0:439:af39:b406 with SMTP id ffacd0b85a97d-439af39bc50mr13671050f8f.24.1772488989386; Mon, 02 Mar 2026 14:03:09 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 05/12] hw/char/serial: Remove unhelpful comment Date: Mon, 2 Mar 2026 23:02:47 +0100 Message-ID: <20260302220254.1166849-6-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=shentey@gmail.com; helo=mail-wr1-x432.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489030731139100 Content-Type: text/plain; charset="utf-8" There is no "is_load" flag and one can tell from the method name what the method does. Remove this unhelpful comment. Signed-off-by: Bernhard Beschow Reviewed-by: Peter Maydell --- hw/char/serial.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/hw/char/serial.c b/hw/char/serial.c index 2c558cb9fc..f73de1ae4f 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -281,9 +281,6 @@ static void serial_xmit(SerialState *s) s->lsr |=3D UART_LSR_TEMT; } =20 -/* Setter for FCR. - is_load flag means, that value is set while loading VM state - and interrupt should not be invoked */ static void serial_write_fcr(SerialState *s, uint8_t val) { /* Set fcr - val only has the bits that are supposed to "stick" */ --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489027; cv=none; d=zohomail.com; s=zohoarc; b=DjJ+qkm0H9JkzgHS0+WWDKzBUP7Ef/8OJOSb09JDTlHZk6C1EygMx2zI2Tfcn99f1Yjwbw9kmL+ggDXl7QbrnPQwKLH3s/bPPHvJEJTh4RqFUMCrrVf1BFMpemVvfkE4+QJGtHY8mf8NeKIcu2iDcbiAi1hDVagSjmGehJs5VXk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489027; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=8rm5SPZBoUqRm6XOyb5xovdZ963vq4PbXKDUME9t5Mg=; b=X3RbwUv17Tva0MVgBHGW2ej00QIBQLXRoaMauTKh3w6BdlL0LwVUqXwLD0tf4X7UAdnhmAoMlnr4jndumOd2a5Cwgpm6f0DfkZldHkz2QVA6fqK46i3TpmQPTOKvfquM0mOancujF1YehBePDpSqWyKOZB21zjhlBA041CxfLGY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489027851819.8558857656088; Mon, 2 Mar 2026 14:03:47 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBMB-0000OM-TN; Mon, 02 Mar 2026 17:03:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBMA-0000Mr-0j for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:14 -0500 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBM8-00018a-HK for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:13 -0500 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-48375f10628so33732925e9.1 for ; Mon, 02 Mar 2026 14:03:12 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488991; x=1773093791; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8rm5SPZBoUqRm6XOyb5xovdZ963vq4PbXKDUME9t5Mg=; b=RHCTkLBI/jT84p7pZi5rmEsFVTgWH59mUpk/RRNzworAfs1Ojg9XsI73Tai1uyRnTx dKDwwEL6ZNINqBjKFsZbeLxfAd1Qlsesf/+3+APDNa2w6eUqgHjj7xJvV02eAk0oimQ3 1N1VrcHU1yu/x71+EfnLNqQmc4gYWby95HUN18Af3JmJ04GFJp4UK8IDupp/MyDnBBVF nOJk3BCEGLcyc3F+JQTAAJwpeC7LMOaeevIeCaGKpJdiCmGb7zuj3OUVoSQ86IvkIT20 w3A3QFxW5Jw7hxv5/SJH3gb0UPieV6toMCGAURWVJ395X8qw0CJSwuK/6CR0Fga8S5Ja ohPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488991; x=1773093791; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=8rm5SPZBoUqRm6XOyb5xovdZ963vq4PbXKDUME9t5Mg=; b=ADbuG6cHlhar3g1s5KWG7Cv82C0cyxVJkU5wbjRaToFuIiYA2jJ8trDAlqmXQ6hB6j TzrkQ4N41p/nsNOjyJC/rk/eF17cWZ8rwslub7VOTF4yhpo0Ubad7zpnOVssfUc1JU5U RPeV7IXg9xiJFNZsm6cH1eZElcBBmfyIfzWnRXCwPCJ/KBIfxm10T0Qm3w5+j1g8voA9 Zm32DsfPGxlSKdBXg+j4OjvkjI76EBN/vmk+1IQJtfzqfdzUzxDNugvMqFauz+hBMwTX 8adB5P3gQBljI7X68/Hmb2Cfivhvb6JTQDnIbxEVHWKsVlZ8zOZ8jQsxIGKzGTWhNT56 seww== X-Gm-Message-State: AOJu0YzHy3iQmeVdHjjBMJkE8DHQzqO5zdzZF6GLr7DuIETayBRPlML8 2KHoUAxdfxPbwqkVbVckjJEr/oHpAyREaiCgs96GK7gMyObxBtPj86ps4xyViA== X-Gm-Gg: ATEYQzwLMfuOpvUO2/SDZvgC+7Odnl+B8k3qmaQmwpgOy0m+FSWgp5wkS2oe56KrmoV SaEePCCteXehKRHxgxH/kkAQZnq/pOIpZ+MPBWLjW4tbWo8z9K/OlRRu71XaS8cxNc6lZk2S99A Bz58gtNDGLQbCu5x/zScT8m9nkhA5S2Zn072EATQnDynxZJAh/Xx5SGf3Swh+w5+q1MPd3y9Jon WJ4BvUUicWWHdaDK802VV27IzE4K8SSouKCqJxuPf8CX0YdvAOzKvO58r2qONoOngP/zYadwJun I5HfxkgS3jvk5whQcLHXihZMXniOwQ6LTv6rLS2CPzJd5hC5zMPJKud0Yx7L/W0J71252A5BExb KK/rZJJA2ocsVzNYsnuFkrQ7+J0sEMHijAfn9sy/9EH4jE/d2P/2Noka0Us2d9wgctt8HqM/EBc 1zJ1s/Qj1JSTGwlj+3k11sS92/skdwiNhAHfJdi/9nk0OXibgosm3iFUzeD96lIfnfl4Xy6gzXw noGUHKiCPkSgsUfZHE2JnawI8G9Ne1b8JTXSFpeXhhHwf71zX/7m5nRcg== X-Received: by 2002:a05:600c:6812:b0:483:8062:b2f with SMTP id 5b1f17b1804b1-483c9ba3af1mr213708465e9.6.1772488990633; Mon, 02 Mar 2026 14:03:10 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 06/12] hw/char/serial: Add constants for Line Control Register Date: Mon, 2 Mar 2026 23:02:48 +0100 Message-ID: <20260302220254.1166849-7-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=shentey@gmail.com; helo=mail-wm1-x334.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489032908158500 Content-Type: text/plain; charset="utf-8" Substitute some magic numbers by named constants for slightly improved readability. Signed-off-by: Bernhard Beschow Reviewed-by: Peter Maydell --- hw/char/serial.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/hw/char/serial.c b/hw/char/serial.c index f73de1ae4f..485b98f03f 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -39,6 +39,11 @@ #include "hw/core/qdev-properties-system.h" =20 #define UART_LCR_DLAB 0x80 /* Divisor latch access bit */ +#define UART_LCR_SB 0x40 /* Set break */ +#define UART_LCR_EPS 0x10 /* Even parity select */ +#define UART_LCR_PEN 0x08 /* Parity enable */ +#define UART_LCR_NSTB 0x04 /* Number of stop bits */ +#define UART_LCR_WLS 0x03 /* Word length select */ =20 #define UART_IER_MSI 0x08 /* Enable Modem status interrupt */ #define UART_IER_RLSI 0x04 /* Enable receiver line status interrupt */ @@ -153,23 +158,23 @@ static void serial_update_parameters(SerialState *s) =20 /* Start bit. */ frame_size =3D 1; - if (s->lcr & 0x08) { + if (s->lcr & UART_LCR_PEN) { /* Parity bit. */ frame_size++; - if (s->lcr & 0x10) + if (s->lcr & UART_LCR_EPS) parity =3D 'E'; else parity =3D 'O'; } else { parity =3D 'N'; } - if (s->lcr & 0x04) { + if (s->lcr & UART_LCR_NSTB) { stop_bits =3D 2; } else { stop_bits =3D 1; } =20 - data_bits =3D (s->lcr & 0x03) + 5; + data_bits =3D (s->lcr & UART_LCR_WLS) + 5; frame_size +=3D data_bits + stop_bits; /* Zero divisor should give about 3500 baud */ speed =3D (s->divider =3D=3D 0) ? 3500 : (float) s->baudbase / s->divi= der; @@ -430,7 +435,7 @@ static void serial_ioport_write(void *opaque, hwaddr ad= dr, uint64_t val, int break_enable; s->lcr =3D val; serial_update_parameters(s); - break_enable =3D (val >> 6) & 1; + break_enable =3D !!(val & UART_LCR_SB); if (break_enable !=3D s->last_break_enable) { s->last_break_enable =3D break_enable; qemu_chr_fe_ioctl(&s->chr, CHR_IOCTL_SERIAL_SET_BREAK, @@ -676,7 +681,7 @@ static int serial_post_load(void *opaque, int version_i= d) } } =20 - s->last_break_enable =3D (s->lcr >> 6) & 1; + s->last_break_enable =3D !!(s->lcr & UART_LCR_SB); /* Initialize fcr via setter to perform essential side-effects */ serial_write_fcr(s, s->fcr_vmstate); serial_update_parameters(s); --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489117; cv=none; d=zohomail.com; s=zohoarc; b=MDcYB/V05We8qEurrFNdECLIdgR34mPAoYfF3I6VH8GIlhYXBIQ2UW4B8QPBAqFrgINTCuC/NqlXyy5eOfreu0cNeDwdM3ekAgHeieOgkgPzyMVeKrGSt6WJ1kevl0SxWlmSJeWmBlVlgTeuyD99d5o9UW6G1Oks0yT7EjGNHq0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489117; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=ONRooDxE+SOFwVUb1D4HBBaOVoswy7bX7wry9VAuImw=; b=R+wlk94mftrdqHw2wxNPUwVzOJ1fI8SS6CSXso4mOSFo84OFmRMPB3cFO3mEfNQEIKJtSEsVxHrfXmv7dwGqPCi8TL7L1Y90ifQSqSRM98149SQ03FCRGlc0tGn+MTH3GNrz/0Mz2tCXNFrVBF4an4sQReIdklRdEv53Ylbfms4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489117792536.1947843696934; Mon, 2 Mar 2026 14:05:17 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBME-0000Pe-83; Mon, 02 Mar 2026 17:03:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBMB-0000O0-FN for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:15 -0500 Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBMA-00018w-1f for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:15 -0500 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-439b7c2788dso963140f8f.1 for ; Mon, 02 Mar 2026 14:03:13 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488992; x=1773093792; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ONRooDxE+SOFwVUb1D4HBBaOVoswy7bX7wry9VAuImw=; b=dWTL6MSgzB94pgB6s1IrxdjIh3jPjmkvjsKS3dOoI0xG2RSn6tDMD1gVWNlVwxNDiq mMrb5m+bKJ2BYOgnEbRVmcyEnWpmT9a9rplB2Q/+528zcSC2npOjbKO9Ch7u0L69+DxH 2ksUVSgJqZyyjD5uqPrpZxwA6VxwxV67gN2aqz+Kki0i9+X8Udh7i12Ho4clFIj0Y4xM ibIhXkXf1EBoOgu7rHQRcqRvqCU7TVaDjkMIFB7McwX1Kut/5HSIZOc2eXDnlcP2j843 m13Kbs8ou7TGpc7QBsDuXC8KuqPZGZRPp3O9lIA21oVipMals+BwC6WCQP0yOpdtAGUQ B6mg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488992; x=1773093792; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=ONRooDxE+SOFwVUb1D4HBBaOVoswy7bX7wry9VAuImw=; b=sJFJ06cwrHsc6r5QCeukXGsxsJjflxhuA9JdQcjeRQtVaNHfPpS2j11OaEz+qog8w7 /N2VQkCSDQK8AjEROCIlF74R2q9zyCQGN6aDDiaS5Dl1c1V477tGqgYovYnF2ttYdiXt Iv416p7bQjPJWlwO4ym/Cr2p30fbeniPoNrsyzcCqY+vaXL7Euh0ZLD4+Z7scrkhoAyq HDGhPNwcjxCALQvtbXIe4oDK2SH8Gk+lJCGkQ2z3hCFiCMHPHHZyXMz+7/vhrRs/9L+E Vzd5b9wOyUt9XlTX2df2d26ewhJbGdVPJVF19bABrM3Xt+BqzYgJTMu8HlGoku2aw/nm Z7MA== X-Gm-Message-State: AOJu0Yywyg93TMfG9WpGj47Gp1sui4Kq+fuu1aWfIpUF0GjZAckfWpFw JMoU9ameq0k34XUT7iqDFpAYJyn5sV+8JqP+VsWzLtM9tIwodyr7EBWJdpzolQ== X-Gm-Gg: ATEYQzygu2o1xkfBA1e182+D7BfnrTno+3gsdWrDjFJvodTXazb4Zbhfo+El1h114tp HO5TuQK52yvF9uIsr9hTWRZQnzbQbw20UIycqEp32uVYQvUzyfAttPjTb4+XRKAQsFfjNddySBu R+UkB5gQ1ylp5aGSO6IhxjmR2m08WFL+jH3uXAzcM6aUVaIxroZAk6O56uUDan+n7yM6WlG5iNa KRYMBXrgssnJp4h/kHP93Ns4aF2zw/OhMvs9H2UqsJn2rGhT1YtTYoN2Zfmt3XvzQsDf9/n1RZs zLBJoFO9hlUr4UQ8M0XCcZAmFwVr2wBH28svvXebupWHKVuFJKInDvcw3ucP4pTrjVS7dAoRe3H 9sZbZv3AfhpTq3ei4G97L9qt7Vkq9GSi0cseUM9qgvPvk28ZhcFLzediHFJIpFQXVHLH23ghaZi NUVKWIg2zGw2vY1Sbs2UqDHY83TyV+LIAnugVnX8PTZHLxIm5Zgnor6vIEUYGpxHIHCI447WaE0 I7D3k/FB3fAoiE0Fefisd3fTgcifyAXxtFcdt/ydQ9ehRY= X-Received: by 2002:a5d:5d0d:0:b0:437:771b:26b with SMTP id ffacd0b85a97d-4399ddfc43cmr25415996f8f.26.1772488991958; Mon, 02 Mar 2026 14:03:11 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 07/12] hw/char/serial: Remove redundant reset Date: Mon, 2 Mar 2026 23:02:49 +0100 Message-ID: <20260302220254.1166849-8-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::429; envelope-from=shentey@gmail.com; helo=mail-wr1-x429.google.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FORGED_GMAIL_RCVD=1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489118366158501 Content-Type: text/plain; charset="utf-8" There is no need to invoke the reset method in realize since the reset framework will do so anyway before the machine starts. Signed-off-by: Bernhard Beschow Reviewed-by: Peter Maydell --- hw/char/serial.c | 1 - 1 file changed, 1 deletion(-) diff --git a/hw/char/serial.c b/hw/char/serial.c index 485b98f03f..0f3469a1e8 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -934,7 +934,6 @@ static void serial_realize(DeviceState *dev, Error **er= rp) serial_event, serial_be_change, s, NULL, true= ); fifo8_create(&s->recv_fifo, UART_FIFO_LENGTH); fifo8_create(&s->xmit_fifo, UART_FIFO_LENGTH); - serial_reset(s); } =20 static void serial_unrealize(DeviceState *dev) --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489102; cv=none; d=zohomail.com; s=zohoarc; b=cU926/EVpNOw14UrBYQxOn9Ud5BefLAa1pWBDWDlm5M1k35uJ9RuVn9Bp5Zza9Pi1/ill554IzGArRSw9jezAkBH2E0PACH2t/hMMdGMQzKklbgq2rXLacG2JEJlWlN7NLhtLE1ZGF+j5fBl2EtC8DDD57BdUc9SoDTtcpjtiP4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489102; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=kQcKbngO5gEYvP1cyAmsSZ3twrSC/3ssI8QyeEW5Z+s=; b=ae3NaaxSgSuKAj6wRe/xHmtihFmfP5WzAY4Rud5AB9heVoDlafv63En2dEmVOoVQOtEU0Liz/1Cu8yscTN6XKwKlGDR4cuKvQhirGxsqvSw3ZBj7/yGYq8D5Wci5UoDHYqS6zMeT5NzzFDLY3TJxQ729HF7mcQTggRracdgFCtg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489102171631.7140212481036; Mon, 2 Mar 2026 14:05:02 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBME-0000Pj-O2; Mon, 02 Mar 2026 17:03:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBMC-0000On-Jm for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:16 -0500 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBMB-00019K-8t for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:16 -0500 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-4375d4fb4d4so3620915f8f.0 for ; Mon, 02 Mar 2026 14:03:14 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488993; x=1773093793; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=kQcKbngO5gEYvP1cyAmsSZ3twrSC/3ssI8QyeEW5Z+s=; b=f5UpQ64KkxTS3PqQBfsxxvU41aUqbF56X9+iFjmxYUIX+EssXK/j5DpusnJWY7WVUb DUFFlc5Bkb8tFrnmX99my6y5+36p0uJq+7KLX/KsRQWfaBWw9qs30su9M3IGYXEFUuzV kEEcYHy0coRQO+TCrHRCdG+35QT74xt8IDhS4aj//jZfdMRT97yN5dJm9zvvGx/TIxes +jfTdL4ZDmFPZCMS8Sb8xy+NdoJpXDd25+yJyDPefOf6QW9fRD3LoE5EZU1s2Dn8Zvjp Jlq0iUuRURCmEkpuKTCWNgDNZLppDSARMNDQmm+iaEC3h7WrGhhOzQv0tqpkqFVpWdCy VItA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488993; x=1773093793; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=kQcKbngO5gEYvP1cyAmsSZ3twrSC/3ssI8QyeEW5Z+s=; b=F9w4xhflUoEmSRfwJld2UHt3mUxp3Qdx1K628aeAHf8xY9QiYiBOs75C28i2/NVJ/9 bAXouvOW1L7lzWHzdO1Cjv48iWyyepVRtzOP0K4nSLdISguldCH62IGGtlk1MfJ7BAOu xxfg+uj0KV5aFMwvRvNY2ZqkdapIoZ4R43gssMqKjclJ03+u1ysPEilhHTqHCbptkEdH jTmg5I418Wd6pJ5XBbXCNvA138E8hBo0uauTOrje2r/qiTz9o27rZc/9OEvUOEj9Wa89 hA2Q35MgpxuWI/qWe9Xqgh1dmKz9+CPf+1pRL1+t9D0G3YTNn4szHQtY8wzN4+iYWm4S 82IQ== X-Gm-Message-State: AOJu0YxKLZwuVW4gkcBCNl0yjqUWGdS5luJr1yh1MIL1pD79QX8niAVw rEtBdh+7w2LvEk9TPQ+t8KJC5Ha5TzZo23kUZi3SuoaKbsiGP/NW80jyGfn1bQ== X-Gm-Gg: ATEYQzy27DSphhAKTZeBEycCJv9L93xznchYS20XVOP1FFapWkrOMu1U+CvPgZKqNrr cliTNqdjm+2n5Y8o8dF31sTBA/LufVe04doauA6ITRWRvb78sAToJnd+NkpzFzVJZ/kBGC2rvez UB/b+hA84K+32Pfc+2Zpix5kePHqCeauwn06EMmIA5n911AsKtV7eHYgbMOPxQTZd9WrccC5jA7 rvKvBota1WO84IpG7t56ajR/yM5rdCvVUgkeI4GnMlY3/PY9l6ICfQoex8XxfNrgZj0wXgi2mGK K0kDBNZ/zu/GI3thHWjbWn9xXoJ9Py7zY7ROF6m5vdGDcnPOng2OQyfdc/oYNGgWTlcvkduF8KY 4QD2eSJJVyx3RHPldrZAPjph3vz5UGy7N7Aw99qqz6QgA4cBQ4RnuKZvMJHnC6JX0m27WUlMNVF bsYVzsGdomFO0djuNJaoE2JcQ712ElHP1ikKR2xN0Y+vIv/ZcekbXAoCVDBnLyw9mOLDgFMwSKc IRMH+MoWLTX90mNxfQvnzB+BtTo/pGsvd4QM86oGj3XxRU= X-Received: by 2002:a5d:588c:0:b0:439:bfaa:ed9d with SMTP id ffacd0b85a97d-439bfaaf06dmr1154446f8f.58.1772488993199; Mon, 02 Mar 2026 14:03:13 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 08/12] hw/char/serial: Avoid implicit conversion when tracing Date: Mon, 2 Mar 2026 23:02:50 +0100 Message-ID: <20260302220254.1166849-9-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::431; envelope-from=shentey@gmail.com; helo=mail-wr1-x431.google.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FORGED_GMAIL_RCVD=1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489105478139100 Content-Type: text/plain; charset="utf-8" On 64 bit targets, the MemoryRegion API passes an address and a value as uint64_t, so use that for tracing. Keep the uint8_t for reading since this is what the device model produces. On targets with less than 64 bits, uint64_t is wide enough to avoid narrowing. Signed-off-by: Bernhard Beschow --- hw/char/trace-events | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/char/trace-events b/hw/char/trace-events index 9e74be2c14..a3fcc77287 100644 --- a/hw/char/trace-events +++ b/hw/char/trace-events @@ -5,8 +5,8 @@ parallel_ioport_read(const char *desc, uint16_t addr, uint8= _t value) "read [%s] parallel_ioport_write(const char *desc, uint16_t addr, uint8_t value) "wri= te [%s] addr 0x%02x val 0x%02x" =20 # serial.c -serial_read(uint16_t addr, uint8_t value) "read addr 0x%02x val 0x%02x" -serial_write(uint16_t addr, uint8_t value) "write addr 0x%02x val 0x%02x" +serial_read(uint64_t addr, uint8_t value) "[0x%02" PRIx64 "] -> 0x%02" PRI= x8 +serial_write(uint64_t addr, uint64_t value) "[0x%02" PRIx64 "] <- 0x%02" P= RIx64 serial_update_parameters(uint64_t baudrate, char parity, int data_bits, in= t stop_bits) "baudrate=3D%"PRIu64" parity=3D'%c' data=3D%d stop=3D%d" =20 # virtio-serial-bus.c --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489114; cv=none; d=zohomail.com; s=zohoarc; b=CZdrHy7dkNX37LfEFgdhTdDg/K7Be85qabiyla5Wjp1jBCx3Z7MXFr9frbfNPkJHmPgPUkdesU7497PLWzmHiniaxIB3g8u6jacHkfD15Lz8hjBmiLOo1JDgagHARbJZf6bL/d+ilQIMTjGIWX5ocEPPxcwycK41hEL/14N9dWo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489114; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=YbAw2Qk1cJ2b5X5jdGPs3lW1hInTRFxpK0ZyxCyCe50=; b=E40FIW1BNRP6+7zrD0YNKclgBEdwHyTOCodbnycUbZXzZRC/3SnCsC/ew0FvUIOBPXVuwJVHq0lCJY8d7mkAnAflwV1g6UyG2nxA3J+1nDxw6LZvZdMHj1y9yoGrycXBQO/iD9uqcsUbEx6qEVXWP5QvaEttJMAwpsb4oJMZiqM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 17724891144501019.5268136355866; Mon, 2 Mar 2026 14:05:14 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBMH-0000R8-EZ; Mon, 02 Mar 2026 17:03:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBME-0000PL-1u for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:18 -0500 Received: from mail-wr1-x42d.google.com ([2a00:1450:4864:20::42d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBMC-00019h-KB for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:17 -0500 Received: by mail-wr1-x42d.google.com with SMTP id ffacd0b85a97d-43992e3f9b8so5095157f8f.3 for ; Mon, 02 Mar 2026 14:03:16 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488995; x=1773093795; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YbAw2Qk1cJ2b5X5jdGPs3lW1hInTRFxpK0ZyxCyCe50=; b=VjcqXiiX6HCrPjfhkf3bdyCIGHV9WjXABQohc+dyS4VH2Ql1DbqVxsSIICw97Zsl2E FnMJjDIk5dScCle/1EMhNkZPAOU3LS2ZC7DLkxK33IyGyRVqQVAnv6mzeURfgLIgrJjp A9SAJRQAXNSEyigBDpoP08qT46EgYM27gWpMJ+d3RfT3FNXeQyhqE7hcwO76EBfIrLrz QG/xrnYzUDnuWt1utlLnn0J3IpOcNIt6FwPKLpsOXtRtrWc8235G10TEmNmoITQq/gRQ Xj9VBqpPXXL9p2H8dJYnchJ7lX7GmOdk/e8y7RKPpb/aJGlY0DPc4Nnxw/lCvtxEWQg7 k4sQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488995; x=1773093795; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=YbAw2Qk1cJ2b5X5jdGPs3lW1hInTRFxpK0ZyxCyCe50=; b=WPZxx2/CFyb/+2pC6jRZ3XA4XPWNioKlNPKAEk3lHW65se0YPZEP8UL+pX0b3O+tym UW/oEg6h/cQ3PyQAPeJCD3wADwHRnqZR23968qGLeUNWRwjOotgZTDkq+Nb4bo9scN+u RmiQWaggFaw1IYAC06CCjXLFAg4pCwWWE0DdU5xdx5MjevKkoRoslJIjn87CaPZr/aIk gb/e2mG/ISE5paUaH6P6RrLkz4zmnUGsmB3HIhOcl1UOS/u/WxKydY/Jvvk9NgPfYU7W rPyHpVs69fhWALariotGT0YF7nDF7LPKRen8k9nMd+gIw53WIjZZOnCRbjv3JpoFmIN1 lyjA== X-Gm-Message-State: AOJu0Yyytr5ZMdBQNOJC1koDgYvXXtBIZNRuzF44aKPNzwdi8t7mS23L HyprIyy1BaPzwfn6zZd4KRZxxRjNX4M6RJwv914d6QyfzxI38aUo1/X9Lbc8Lg== X-Gm-Gg: ATEYQzxgWodKZVnmuFy20htiLD5tkT2wEeXB12oo01no2zhxDqExGz1W5D3BYiblxE7 B4qV2CmDGF+Ii8yFdeQpDYwy0Detg/Y4WnrzZcC4ZtUZ14C95JOxl1x+aOhTrQ71jp5Anqa2zp0 v9MpPpUgH4dDvoSWeYSMasQMtO8bOeD1MkYfxuNawNLmOWhhCtLsYP8zJUzJUKqpis1zELWc1AV W3aqPDWz1aUycNG7tjsJNH5lgvTZI7GriXZvmeS/vCMuxGwm4k6puLEblbVeaESggigX1bccJqQ cMYBm3UY1VLxx2Cb6dCwoKAdYqVS7O5ep3q+vZZ0o0hZ9ujLQbncHddIZ/xBbWOwLLIzJRF2M6z zB7CmgbEcBXNr3AuJp/yBYZl4ygiurpiKELh0ehI/YTEcUODQ2yBJUSdcMr9SpiJkAVxICdnyLe tDKf3gsNpea7K0N25sSlQRskKUHbK89Q7/bIGHJv1nW6SvQuefDoBU7/KUwt1Kr/60GYPdOXyvu 8kTxdqLbXHaNKLsjQZXfIzyNDeaK2tI71clYO70Syownvo= X-Received: by 2002:adf:e811:0:b0:437:6f86:d097 with SMTP id ffacd0b85a97d-4399ddd884dmr18105714f8f.11.1772488994595; Mon, 02 Mar 2026 14:03:14 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 09/12] util/fifo8: Make all read-only methods const-correct Date: Mon, 2 Mar 2026 23:02:51 +0100 Message-ID: <20260302220254.1166849-10-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42d; envelope-from=shentey@gmail.com; helo=mail-wr1-x42d.google.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FORGED_GMAIL_RCVD=1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489116142158500 Content-Type: text/plain; charset="utf-8" Allows these methods to be used in const contexts, i.e. where the parent of the fifo itself is const. This is in particular useful for Rust code. Signed-off-by: Bernhard Beschow Reviewed-by: Peter Maydell --- include/qemu/fifo8.h | 10 +++++----- util/fifo8.c | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/include/qemu/fifo8.h b/include/qemu/fifo8.h index 4f768d4ee3..6b476b404e 100644 --- a/include/qemu/fifo8.h +++ b/include/qemu/fifo8.h @@ -71,7 +71,7 @@ uint8_t fifo8_pop(Fifo8 *fifo); * * Returns: The peeked data byte. */ -uint8_t fifo8_peek(Fifo8 *fifo); +uint8_t fifo8_peek(const Fifo8 *fifo); =20 /** * fifo8_pop_buf: @@ -181,7 +181,7 @@ void fifo8_reset(Fifo8 *fifo); * * Returns: True if the fifo is empty, false otherwise. */ -bool fifo8_is_empty(Fifo8 *fifo); +bool fifo8_is_empty(const Fifo8 *fifo); =20 /** * fifo8_is_full: @@ -191,7 +191,7 @@ bool fifo8_is_empty(Fifo8 *fifo); * * Returns: True if the fifo is full, false otherwise. */ -bool fifo8_is_full(Fifo8 *fifo); +bool fifo8_is_full(const Fifo8 *fifo); =20 /** * fifo8_num_free: @@ -201,7 +201,7 @@ bool fifo8_is_full(Fifo8 *fifo); * * Returns: Number of free bytes. */ -uint32_t fifo8_num_free(Fifo8 *fifo); +uint32_t fifo8_num_free(const Fifo8 *fifo); =20 /** * fifo8_num_used: @@ -211,7 +211,7 @@ uint32_t fifo8_num_free(Fifo8 *fifo); * * Returns: Number of used bytes. */ -uint32_t fifo8_num_used(Fifo8 *fifo); +uint32_t fifo8_num_used(const Fifo8 *fifo); =20 extern const VMStateDescription vmstate_fifo8; =20 diff --git a/util/fifo8.c b/util/fifo8.c index a26da66ad2..cc4f590b7a 100644 --- a/util/fifo8.c +++ b/util/fifo8.c @@ -71,7 +71,7 @@ uint8_t fifo8_pop(Fifo8 *fifo) return ret; } =20 -uint8_t fifo8_peek(Fifo8 *fifo) +uint8_t fifo8_peek(const Fifo8 *fifo) { assert(fifo->num > 0); return fifo->data[fifo->head]; @@ -157,22 +157,22 @@ void fifo8_drop(Fifo8 *fifo, uint32_t len) assert(len =3D=3D 0); } =20 -bool fifo8_is_empty(Fifo8 *fifo) +bool fifo8_is_empty(const Fifo8 *fifo) { return (fifo->num =3D=3D 0); } =20 -bool fifo8_is_full(Fifo8 *fifo) +bool fifo8_is_full(const Fifo8 *fifo) { return (fifo->num =3D=3D fifo->capacity); } =20 -uint32_t fifo8_num_free(Fifo8 *fifo) +uint32_t fifo8_num_free(const Fifo8 *fifo) { return fifo->capacity - fifo->num; } =20 -uint32_t fifo8_num_used(Fifo8 *fifo) +uint32_t fifo8_num_used(const Fifo8 *fifo) { return fifo->num; } --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=gmail.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489094996951.1324184423115; Mon, 2 Mar 2026 14:04:54 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBMG-0000Qq-Um; Mon, 02 Mar 2026 17:03:20 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBMF-0000Pz-7S for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:19 -0500 Received: from mail-wr1-x42c.google.com ([2a00:1450:4864:20::42c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBMD-0001A6-Ka for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:18 -0500 Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-4398c7083d7so4338526f8f.3 for ; Mon, 02 Mar 2026 14:03:17 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488996; x=1773093796; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=a0q3doKdbgb3JqnYROywKi9R6evoTwQ/dQN4VyRTwQg=; b=mTd3OmAW8D/ZqpsCAZPnYTwG1TeJW/uRFTOZLhCnp1BJ+EcrMDR7vpyA6ZSpG+2cv9 m9gsIWrT2gdiLWJfB+N1yLNm2f8YXyBKNhBWvzyzC481bPZDmSmvdOJvXHJf1AqstmQM Vddf6iUbQrP7UdgwxjAC74urVmFsgRok9UNxc020nFdncnMkpj4JLJ7qXbQQM8U3tvO8 UX4anh2JAYZt8Vz/2l9eV8d3H/UOD0iu3/H2Us6y+v3fa8LkFNzfmmtZYv8QFJ9+q1or eILmH6oKvR5q43AGHcOTYQLjl6emvrq0nSiip1eHXFIdtzn5qJRc1Z2seNprprOs9F1k s22Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488996; x=1773093796; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=a0q3doKdbgb3JqnYROywKi9R6evoTwQ/dQN4VyRTwQg=; b=kYZiuqjZXjYYUxQU47dfHQJH0lsZBYSMdh4AsDUjBKYTbuz6gv+zvGzkA9ZEdT8tXT 0ZQQYEBe/Q4yPhP+IYNu7Gg5lkICtSkedxryfhExev7M2TDwePe4bD7HOMh/NKci52z3 ZU2czxY3m6No4UVG4zU2BoeaaNZQRqEPiyBLQNFc/5Ta3Rml6nCwxJ7vI7GGjsk4/M3H fBz3XB0h5CKDEnmaym1NDUzfU9MqZGhj1SEj085Ja5l6v8mpOK7TUTlTdGKjWdW/OkBq KP1gh/AqfDQJtZeQgD8FDsINTRpmVmbee6hlLj5OmtgjHaVhO3Wt8NoWOosidZBoTq7+ 7zug== X-Gm-Message-State: AOJu0YxidOhx5kh6tRw+513iaw/034yeRy+dRRxr60tyWMdznPpASbf3 W6hqGrKl+WGO5pnoZcfO1A6wiI0RvBh0ACpf3q8OZsa8D5lzNMfaytCoKHqfEw== X-Gm-Gg: ATEYQzyB4QJJa2omsZze7CYINGU1/Z6MqeXU7fERKsq+2ayaNccmCn7V80m6r4fuy+i D8ycZQCnUEacGHE49VOyBxpv1ZhVwwQihlI7e3yfT2M+gUtOlDXw8HVrf8k1kE48Cl6igtw/ypx qBug9nNKBtbTUu0ADrnHrZ82i7gUF403IpaPi2qV8gEk80RNJVpC7n0TtMObtqql31TrPyBqYdA 33mnvZg/q48KHZWZBqs+pvpyf5L2J9V5oHyLtucO4c3AGlm1yk+FSZ+GDoub7CY1oOs0yqWcvsq Q6+7PIYFRB82RHUuSmVhmS4D+BGkbpQA/2nlpQEMXws7961ogbfHCqtjtpE5/lmGRcqgheRC83m HVaPkfPg4CndixZHEImVJLTPpz0fiO5S7nyzisv7XZ9OZt+RIKxQdW2inTcD1Kvd2ED4Mbsma7p QScgc5WXtnLOwDGLDWkUGPuy47h5kIUpY1svATt937p5IV4Al3HcOsx5gAaAtOMeTAcnZ1wXtTj fQkiGlhngQ4CF8vMGEv2OAoCxA7JTYtyO76YUlsU2yqtac= X-Received: by 2002:a05:6000:2dc5:b0:439:b858:1d28 with SMTP id ffacd0b85a97d-439b8581e08mr7408633f8f.26.1772488995816; Mon, 02 Mar 2026 14:03:15 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 10/12] hw/arm/aspeed_ast27x0-{ssp, tsp}: Do not access SerialMM internals directly Date: Mon, 2 Mar 2026 23:02:52 +0100 Message-ID: <20260302220254.1166849-11-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42c; envelope-from=shentey@gmail.com; helo=mail-wr1-x42c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1772489096083158500 Content-Type: text/plain; charset="utf-8" SerialMM inherits from SysBusDevice and exposes the memory region by means of sysbus_mmio_get_region(). Use that in order to avoid accessing implementation details of SerialMM. Signed-off-by: Bernhard Beschow Reviewed-by: Jamin Lin Reviewed-by: Peter Maydell --- hw/arm/aspeed_ast27x0-ssp.c | 7 ++++--- hw/arm/aspeed_ast27x0-tsp.c | 7 ++++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/hw/arm/aspeed_ast27x0-ssp.c b/hw/arm/aspeed_ast27x0-ssp.c index 9b12ba6743..8b84300e0f 100644 --- a/hw/arm/aspeed_ast27x0-ssp.c +++ b/hw/arm/aspeed_ast27x0-ssp.c @@ -149,6 +149,7 @@ static void aspeed_soc_ast27x0ssp_realize(DeviceState *= dev_soc, Error **errp) AspeedCoprocessorState *s =3D ASPEED_COPROCESSOR(dev_soc); AspeedCoprocessorClass *sc =3D ASPEED_COPROCESSOR_GET_CLASS(s); DeviceState *armv7m; + MemoryRegion *mr; g_autofree char *sdram_name =3D NULL; int i; =20 @@ -230,9 +231,9 @@ static void aspeed_soc_ast27x0ssp_realize(DeviceState *= dev_soc, Error **errp) } =20 /* UART */ - memory_region_init_alias(&s->uart_alias, OBJECT(s), "uart.alias", - &s->uart->serial.io, 0, - memory_region_size(&s->uart->serial.io)); + mr =3D sysbus_mmio_get_region(SYS_BUS_DEVICE(s->uart), 0); + memory_region_init_alias(&s->uart_alias, OBJECT(s), "uart.alias", mr, = 0, + memory_region_size(mr)); memory_region_add_subregion(s->memory, sc->memmap[s->uart_dev], &s->uart_alias); /* diff --git a/hw/arm/aspeed_ast27x0-tsp.c b/hw/arm/aspeed_ast27x0-tsp.c index e39d1dc171..e7c7b74491 100644 --- a/hw/arm/aspeed_ast27x0-tsp.c +++ b/hw/arm/aspeed_ast27x0-tsp.c @@ -149,6 +149,7 @@ static void aspeed_soc_ast27x0tsp_realize(DeviceState *= dev_soc, Error **errp) AspeedCoprocessorState *s =3D ASPEED_COPROCESSOR(dev_soc); AspeedCoprocessorClass *sc =3D ASPEED_COPROCESSOR_GET_CLASS(s); DeviceState *armv7m; + MemoryRegion *mr; g_autofree char *sdram_name =3D NULL; int i; =20 @@ -230,9 +231,9 @@ static void aspeed_soc_ast27x0tsp_realize(DeviceState *= dev_soc, Error **errp) } =20 /* UART */ - memory_region_init_alias(&s->uart_alias, OBJECT(s), "uart.alias", - &s->uart->serial.io, 0, - memory_region_size(&s->uart->serial.io)); + mr =3D sysbus_mmio_get_region(SYS_BUS_DEVICE(s->uart), 0); + memory_region_init_alias(&s->uart_alias, OBJECT(s), "uart.alias", mr, = 0, + memory_region_size(mr)); memory_region_add_subregion(s->memory, sc->memmap[s->uart_dev], &s->uart_alias); /* --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489068; cv=none; d=zohomail.com; s=zohoarc; b=BxPjXhLPLLVyH7ol43CBvzqOL4PFeMeFS4vAQB2CT5cOT+3eKEGNB6K4nsR0IObyXzgBreWxWmuNGWxWZMYb/Dd1EvRx08Vr5EibuEOGzdXaoo0KfjzCMR+7JDdVmFhYUPQOXzJnWjzl0Njt01d+AJCBlZbUgMWioDqFgRD9Cfo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489068; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=zLewkWpDZG84wNf0xW0RFI07PgVNVsc0k+H5ou4siNA=; b=fPxeecqDESCSyStN4chGhpfdRxSsTUgwUG6FFpDpZZnwh2vbsvdRtijE/SAwwT8Em2jvRRpRfPzmuZs44ODVdYJODWSJ/NAxzu++iNwA0cmWxGNFIDw7q9DkrubFXdtGJNhttyFoy+3cjXNaMnk43D2SQ41bFei/r8q23izPBUA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489068164587.3288580654854; Mon, 2 Mar 2026 14:04:28 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBMI-0000Rn-Fi; Mon, 02 Mar 2026 17:03:22 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBMH-0000Qy-6N for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:21 -0500 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBMF-0001AT-5Z for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:20 -0500 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-4376acce52eso3342834f8f.1 for ; Mon, 02 Mar 2026 14:03:18 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488997; x=1773093797; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=zLewkWpDZG84wNf0xW0RFI07PgVNVsc0k+H5ou4siNA=; b=glPCuHJCGG7NTjoFBfFUV7QB+YjFisayE8GSCt17aeE/VVc9n6mV9Y9UuLqZp4HFRK Omc7Qt+bQzlRh9Cr17AIRMkfKlE+FsfA8Dc4bzHqK15Q1KkGyf5LiQPySt1Z99P68IMb VmyUcu7Xrp0uoPbZXnM8ftMIOzykaNOitHOADGY6rR0A3Lw0fs86IWnt20UN7zvpcv5g A43KeW2ys7ZIvn15J/EIMveoEDB9HyMnpiYVdMV2hWHgs7EC/zi1uF2kJ00RM+SusfGj zdW5V7DdXUHwGWZHZGNh1Vl9PNSNyFViIpW7qmuhK5/gESYsxDcPIcEosu1UftFvP8r3 qbiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488997; x=1773093797; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=zLewkWpDZG84wNf0xW0RFI07PgVNVsc0k+H5ou4siNA=; b=gTfkWgrFyJsSOLm4j3S67NPV4PiVnioXw04JqnLoejlst47xySkhiKeRvaJmRRe3fz xmRPm7fi8rIU3Tb+61z3xxugt8vACTbNjnMq02e0UgDxoWOQbcdd6B1Lp1OVWmS973RZ Tp6TvSEo0WhRWmyJBltMYaY33XFA6InsgaQpI3WU76Fx0sJifqbFJF6dHC8vMjYOXfSA wFYG3BKRoPa9khC9o5I6i0qgdrzv3NpQvijxYwk8MlwOvwYE77MfC9fyAmdFyBVOwPqi XmxQPSTzy7OfBng1lipnQe62jtPD6TL9ZaI6IEtOl1rDC/ROFvLHt9qxl3G+psyGmKYe RYKQ== X-Gm-Message-State: AOJu0Yykr0iqysk6rqjR9DmQGRsf5hH+9w6LRmtKwe3to+zL6bQXI5je R6DQY1kPjyVLhiJwPli6WQ1yT/MbvAweA2eIPtzW5O1jvt7YR9FwsX4Ppiehjg== X-Gm-Gg: ATEYQzwLWMIvUed2jvufy4gnvSaKO0zEsslCBoepmWqzVE9vWsh5bM3+K9HwMaaJmcp qsQSN1xzpruQRFX762nb3oyE91Y8XTo/YCtt3Ly4Lx2wc0RztyslPuQmp1NAriRWTcYud7tpZ6y 3Qy3Pn3INWQI2iAa05Lr+FEZfd3CwOvVynDci/nKchUj89jjt5NyOYmDb4U4xLqVagYNoKZXQrQ KsnqSvXy/+CtZrXX9yw7q26JRG5Ij9A2wUV+F6qsOWvKSzKQn363mgY7a+w59UvRa575YmD35Js JPWyfAfJYz9UOH8pFcGFGvZcOxo5SynDc9e/1F57H7MO5Ca0dcwaMj0c6rTU/CQ73RH+xYKNVHg FbiCDvRdyBT6l0rF7cYFNdrX40SgEpDwpsU40YhpEtaorYwMui5HrWFGCMr1rMoCwg5Qmd7YaJj gzLF/q4l+szdkpgYk9OnOi3s3sKoxPnhRteo0Kt8CjCpqZqQcanFBiwRlvjXLp5TYL4UDxLSZ53 EI8a312uy/N7QGbgAQynq2LJ/FP/Tq87mB7LfBv50O5gex7HeKQn7SWVg== X-Received: by 2002:a05:6000:2388:b0:437:7168:af37 with SMTP id ffacd0b85a97d-4399de2c3eamr23297743f8f.42.1772488997128; Mon, 02 Mar 2026 14:03:17 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 11/12] hw/char: Have SerialState inherit from SysBusDevice Date: Mon, 2 Mar 2026 23:02:53 +0100 Message-ID: <20260302220254.1166849-12-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::431; envelope-from=shentey@gmail.com; helo=mail-wr1-x431.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489069436139100 Content-Type: text/plain; charset="utf-8" SerialState currently inherits just from DeviceState and serial devices use SerialState as an "IP block". Since DeviceState doesn't have an API to provide MMIO regions or IRQs, all serial devices access attributes internal to SerialState directly. Fix this by having SerialState inherit from SysBusDevice. In addition, SerialState doesn't participate in the reset framework while SysBusDevice does. This allows for implementing reset functionality more idiomatically. Signed-off-by: Bernhard Beschow --- include/hw/char/serial.h | 4 ++-- hw/char/diva-gsp.c | 22 +++++++++++----------- hw/char/serial-isa.c | 19 ++++++++++++------- hw/char/serial-mm.c | 10 +++++----- hw/char/serial-pci-multi.c | 22 +++++++++++----------- hw/char/serial-pci.c | 13 +++++++------ hw/char/serial.c | 5 ++++- 7 files changed, 52 insertions(+), 43 deletions(-) diff --git a/include/hw/char/serial.h b/include/hw/char/serial.h index ea82ffac47..650fc27693 100644 --- a/include/hw/char/serial.h +++ b/include/hw/char/serial.h @@ -26,7 +26,7 @@ #ifndef HW_SERIAL_H #define HW_SERIAL_H =20 -#include "hw/core/qdev.h" +#include "hw/core/sysbus.h" #include "chardev/char-fe.h" #include "system/memory.h" #include "qemu/fifo8.h" @@ -35,7 +35,7 @@ #define UART_FIFO_LENGTH 16 /* 16550A Fifo Length */ =20 struct SerialState { - DeviceState parent; + SysBusDevice parent; =20 uint16_t divider; uint8_t rbr; /* receive register */ diff --git a/hw/char/diva-gsp.c b/hw/char/diva-gsp.c index 280d0413c6..60ddc78752 100644 --- a/hw/char/diva-gsp.c +++ b/hw/char/diva-gsp.c @@ -57,13 +57,13 @@ typedef struct PCIDivaSerialState { static void diva_pci_exit(PCIDevice *dev) { PCIDivaSerialState *pci =3D DO_UPCAST(PCIDivaSerialState, dev, dev); - SerialState *s; int i; =20 for (i =3D 0; i < pci->ports; i++) { - s =3D pci->state + i; - qdev_unrealize(DEVICE(s)); - memory_region_del_subregion(&pci->membar, &s->io); + SysBusDevice *sbd =3D SYS_BUS_DEVICE(pci->state + i); + qdev_unrealize(DEVICE(sbd)); + memory_region_del_subregion(&pci->membar, + sysbus_mmio_get_region(sbd, 0)); g_free(pci->name[i]); } qemu_free_irqs(pci->irqs, pci->ports); @@ -118,7 +118,6 @@ static void diva_pci_realize(PCIDevice *dev, Error **er= rp) { PCIDeviceClass *pc =3D PCI_DEVICE_GET_CLASS(dev); PCIDivaSerialState *pci =3D DO_UPCAST(PCIDivaSerialState, dev, dev); - SerialState *s; struct diva_info di =3D diva_get_diva_info(pc); size_t i, offset =3D 0; size_t portmask =3D di.omask; @@ -130,22 +129,23 @@ static void diva_pci_realize(PCIDevice *dev, Error **= errp) pci->irqs =3D qemu_allocate_irqs(multi_serial_irq_mux, pci, di.nports); =20 for (i =3D 0; i < di.nports; i++) { - s =3D pci->state + i; - if (!qdev_realize(DEVICE(s), NULL, errp)) { + SysBusDevice *sbd =3D SYS_BUS_DEVICE(pci->state + i); + if (!sysbus_realize(sbd, errp)) { diva_pci_exit(dev); return; } - s->irq =3D pci->irqs[i]; + sysbus_connect_irq(sbd, 0, pci->irqs[i]); pci->name[i] =3D g_strdup_printf("uart #%zu", i + 1); - memory_region_init_io(&s->io, OBJECT(pci), &serial_io_ops, s, - pci->name[i], 8); + memory_region_init_io(sysbus_mmio_get_region(sbd, 0), OBJECT(pci), + &serial_io_ops, sbd, pci->name[i], 8); =20 /* calculate offset of given port based on bitmask */ while ((portmask & BIT(0)) =3D=3D 0) { offset +=3D 8; portmask >>=3D 1; } - memory_region_add_subregion(&pci->membar, offset, &s->io); + memory_region_add_subregion(&pci->membar, offset, + sysbus_mmio_get_region(sbd, 0)); offset +=3D 8; portmask >>=3D 1; pci->ports++; diff --git a/hw/char/serial-isa.c b/hw/char/serial-isa.c index a4be0492c5..d3a401f56c 100644 --- a/hw/char/serial-isa.c +++ b/hw/char/serial-isa.c @@ -58,7 +58,7 @@ static void serial_isa_realizefn(DeviceState *dev, Error = **errp) static int index; ISADevice *isadev =3D ISA_DEVICE(dev); ISASerialState *isa =3D ISA_SERIAL(dev); - SerialState *s =3D &isa->state; + SysBusDevice *sbd =3D SYS_BUS_DEVICE(&isa->state); =20 if (isa->index =3D=3D -1) { isa->index =3D index; @@ -76,12 +76,13 @@ static void serial_isa_realizefn(DeviceState *dev, Erro= r **errp) } index++; =20 - s->irq =3D isa_get_irq(isadev, isa->isairq); - qdev_realize(DEVICE(s), NULL, errp); + sysbus_realize(sbd, errp); + sysbus_connect_irq(sbd, 0, isa_get_irq(isadev, isa->isairq)); qdev_set_legacy_instance_id(dev, isa->iobase, 3); =20 - memory_region_init_io(&s->io, OBJECT(isa), &serial_io_ops, s, "serial"= , 8); - isa_register_ioport(isadev, &s->io, isa->iobase); + memory_region_init_io(sysbus_mmio_get_region(sbd, 0), OBJECT(isa), + &serial_io_ops, sbd, "serial", 8); + isa_register_ioport(isadev, sysbus_mmio_get_region(sbd, 0), isa->iobas= e); } =20 static void serial_isa_build_aml(AcpiDevAmlIf *adev, Aml *scope) @@ -188,13 +189,17 @@ void serial_hds_isa_init(ISABus *bus, int from, int t= o) void isa_serial_set_iobase(ISADevice *serial, hwaddr iobase) { ISASerialState *s =3D ISA_SERIAL(serial); + SysBusDevice *sbd =3D SYS_BUS_DEVICE(&s->state); =20 serial->ioport_id =3D iobase; s->iobase =3D iobase; - memory_region_set_address(&s->state.io, s->iobase); + memory_region_set_address(sysbus_mmio_get_region(sbd, 0), s->iobase); } =20 void isa_serial_set_enabled(ISADevice *serial, bool enabled) { - memory_region_set_enabled(&ISA_SERIAL(serial)->state.io, enabled); + ISASerialState *s =3D ISA_SERIAL(serial); + SysBusDevice *sbd =3D SYS_BUS_DEVICE(&s->state); + + memory_region_set_enabled(sysbus_mmio_get_region(sbd, 0), enabled); } diff --git a/hw/char/serial-mm.c b/hw/char/serial-mm.c index 0e0be26fa9..de11498278 100644 --- a/hw/char/serial-mm.c +++ b/hw/char/serial-mm.c @@ -71,17 +71,17 @@ static const MemoryRegionOps serial_mm_ops[] =3D { static void serial_mm_realize(DeviceState *dev, Error **errp) { SerialMM *smm =3D SERIAL_MM(dev); - SerialState *s =3D &smm->serial; + SysBusDevice *sbd =3D SYS_BUS_DEVICE(&smm->serial); =20 - if (!qdev_realize(DEVICE(s), NULL, errp)) { + if (!sysbus_realize(sbd, errp)) { return; } =20 - memory_region_init_io(&s->io, OBJECT(dev), + memory_region_init_io(sysbus_mmio_get_region(sbd, 0), OBJECT(dev), &serial_mm_ops[smm->endianness], smm, "serial", 8 << smm->regshift); - sysbus_init_mmio(SYS_BUS_DEVICE(smm), &s->io); - sysbus_init_irq(SYS_BUS_DEVICE(smm), &smm->serial.irq); + sysbus_init_mmio(SYS_BUS_DEVICE(smm), sysbus_mmio_get_region(sbd, 0)); + sysbus_pass_irq(SYS_BUS_DEVICE(smm), SYS_BUS_DEVICE(sbd)); } =20 static const VMStateDescription vmstate_serial_mm =3D { diff --git a/hw/char/serial-pci-multi.c b/hw/char/serial-pci-multi.c index 17796b93dd..7545ab7425 100644 --- a/hw/char/serial-pci-multi.c +++ b/hw/char/serial-pci-multi.c @@ -51,13 +51,13 @@ typedef struct PCIMultiSerialState { static void multi_serial_pci_exit(PCIDevice *dev) { PCIMultiSerialState *pci =3D DO_UPCAST(PCIMultiSerialState, dev, dev); - SerialState *s; int i; =20 for (i =3D 0; i < pci->ports; i++) { - s =3D pci->state + i; - qdev_unrealize(DEVICE(s)); - memory_region_del_subregion(&pci->iobar, &s->io); + SysBusDevice *sbd =3D SYS_BUS_DEVICE(pci->state + i); + qdev_unrealize(DEVICE(sbd)); + memory_region_del_subregion(&pci->iobar, + sysbus_mmio_get_region(sbd, 0)); g_free(pci->name[i]); } } @@ -93,7 +93,6 @@ static void multi_serial_pci_realize(PCIDevice *dev, Erro= r **errp) { PCIDeviceClass *pc =3D PCI_DEVICE_GET_CLASS(dev); PCIMultiSerialState *pci =3D DO_UPCAST(PCIMultiSerialState, dev, dev); - SerialState *s; size_t i, nports =3D multi_serial_get_port_count(pc); =20 pci->dev.config[PCI_CLASS_PROG] =3D 2; /* 16550 compatible */ @@ -102,16 +101,17 @@ static void multi_serial_pci_realize(PCIDevice *dev, = Error **errp) pci_register_bar(&pci->dev, 0, PCI_BASE_ADDRESS_SPACE_IO, &pci->iobar); =20 for (i =3D 0; i < nports; i++) { - s =3D pci->state + i; - if (!qdev_realize(DEVICE(s), NULL, errp)) { + SysBusDevice *sbd =3D SYS_BUS_DEVICE(pci->state + i); + if (!sysbus_realize(sbd, errp)) { multi_serial_pci_exit(dev); return; } - s->irq =3D &pci->irqs[i]; + sysbus_connect_irq(sbd, 0, &pci->irqs[i]); pci->name[i] =3D g_strdup_printf("uart #%zu", i + 1); - memory_region_init_io(&s->io, OBJECT(pci), &serial_io_ops, s, - pci->name[i], 8); - memory_region_add_subregion(&pci->iobar, 8 * i, &s->io); + memory_region_init_io(sysbus_mmio_get_region(sbd, 0), OBJECT(pci), + &serial_io_ops, sbd, pci->name[i], 8); + memory_region_add_subregion(&pci->iobar, 8 * i, + sysbus_mmio_get_region(sbd, 0)); pci->ports++; } } diff --git a/hw/char/serial-pci.c b/hw/char/serial-pci.c index d8cacc9085..10a99592b6 100644 --- a/hw/char/serial-pci.c +++ b/hw/char/serial-pci.c @@ -46,18 +46,20 @@ OBJECT_DECLARE_SIMPLE_TYPE(PCISerialState, PCI_SERIAL) static void serial_pci_realize(PCIDevice *dev, Error **errp) { PCISerialState *pci =3D DO_UPCAST(PCISerialState, dev, dev); - SerialState *s =3D &pci->state; + SysBusDevice *sbd =3D SYS_BUS_DEVICE(&pci->state); =20 - if (!qdev_realize(DEVICE(s), NULL, errp)) { + if (!sysbus_realize(sbd, errp)) { return; } =20 pci->dev.config[PCI_CLASS_PROG] =3D 2; /* 16550 compatible */ pci->dev.config[PCI_INTERRUPT_PIN] =3D 1; - s->irq =3D pci_allocate_irq(&pci->dev); + sysbus_connect_irq(sbd, 0, pci_allocate_irq(&pci->dev)); =20 - memory_region_init_io(&s->io, OBJECT(pci), &serial_io_ops, s, "serial"= , 8); - pci_register_bar(&pci->dev, 0, PCI_BASE_ADDRESS_SPACE_IO, &s->io); + memory_region_init_io(sysbus_mmio_get_region(sbd, 0), OBJECT(pci), + &serial_io_ops, sbd, "serial", 8); + pci_register_bar(&pci->dev, 0, PCI_BASE_ADDRESS_SPACE_IO, + sysbus_mmio_get_region(sbd, 0)); } =20 static void serial_pci_exit(PCIDevice *dev) @@ -66,7 +68,6 @@ static void serial_pci_exit(PCIDevice *dev) SerialState *s =3D &pci->state; =20 qdev_unrealize(DEVICE(s)); - qemu_free_irq(s->irq); } =20 static const VMStateDescription vmstate_pci_serial =3D { diff --git a/hw/char/serial.c b/hw/char/serial.c index 0f3469a1e8..c58337bd20 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -934,6 +934,9 @@ static void serial_realize(DeviceState *dev, Error **er= rp) serial_event, serial_be_change, s, NULL, true= ); fifo8_create(&s->recv_fifo, UART_FIFO_LENGTH); fifo8_create(&s->xmit_fifo, UART_FIFO_LENGTH); + + sysbus_init_mmio(SYS_BUS_DEVICE(s), &s->io); + sysbus_init_irq(SYS_BUS_DEVICE(s), &s->irq); } =20 static void serial_unrealize(DeviceState *dev) @@ -984,7 +987,7 @@ static void serial_class_init(ObjectClass *klass, const= void *data) =20 static const TypeInfo serial_info =3D { .name =3D TYPE_SERIAL, - .parent =3D TYPE_DEVICE, + .parent =3D TYPE_SYS_BUS_DEVICE, .instance_size =3D sizeof(SerialState), .class_init =3D serial_class_init, }; --=20 2.53.0 From nobody Sat Apr 11 23:08:45 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1772489064; cv=none; d=zohomail.com; s=zohoarc; b=fPiNrmB++LuZPwptnkW3f4aJMxbk+U4+rh5pSAv+98NdqrTUZAG8UxPhi9Yaj7KgDGnMZ8UzopsoYvGS1/4y5O+2Jhjg9uJrcRY7t4dQj70GHONp9L6zwUjqu/oGnHUAW7CCkEygsDlRpdUzf4ZoBKWIs3nAY6aKv/Sl8Jw6h/w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772489064; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=I3pSiajhTDR+3+VSpc4ntxNFFZn7kZ6nNzxA+ROJWxI=; b=UnL7CcOayNNypCXxsXPhlG6n7TrntsWXtuCPOoJhosqAFyCrUVkdziwbQwonovC9V05rM61LUBGkLHo/V9xEaINiKyvgP89W3OARLhTOP5u/9278nWoWeZTs2DW2gotsw12gh2ChGzR1k/Iv9dz8A1/k52oG4cd8XvFzAoStjv4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772489064558878.8628150401485; Mon, 2 Mar 2026 14:04:24 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vxBMJ-0000Sj-BX; Mon, 02 Mar 2026 17:03:23 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vxBMI-0000RZ-0y for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:22 -0500 Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vxBMG-0001Ar-A0 for qemu-devel@nongnu.org; Mon, 02 Mar 2026 17:03:21 -0500 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-4375d4fb4d4so3620958f8f.0 for ; Mon, 02 Mar 2026 14:03:19 -0800 (PST) Received: from Provence.localdomain (dynamic-2a02-3100-2e0b-4800-0219-99ff-feb2-2458.310.pool.telefonica.de. [2a02:3100:2e0b:4800:219:99ff:feb2:2458]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4399c765c38sm29308102f8f.31.2026.03.02.14.03.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 02 Mar 2026 14:03:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772488999; x=1773093799; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=I3pSiajhTDR+3+VSpc4ntxNFFZn7kZ6nNzxA+ROJWxI=; b=TWV+lkWdY1I69pyTximCnHHM8006+JsBcXcSRraKI1v0xHKzbpEql4K/wS17w3z2wP 0kj1dLAd6j8Yd4uX9z7AfHcaOld3CCi+V8npL7ZvO5FXjNOjr3/2ujcNYb93qVaOHRaF F1JoDsMYagszyQ/SwA2ZSOY8G9Xkd0hTd8ndxVSXOybzxByUFqQcto1lYR+g962uyQyL VLK3HKYWhL4SwaPlDcdPCGJK/qqiCBB3tfpMbwtBqTID44agRsyXzfbaHvHVHWA+5Fe3 /L+vR00EWTcKsoglL2mxvR7Plt94HzeeTGoxiXgG2B2fKs1sGKqtA/QCgMW4FAcIHWvE v0SQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772488999; x=1773093799; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=I3pSiajhTDR+3+VSpc4ntxNFFZn7kZ6nNzxA+ROJWxI=; b=NMXrEzEB1oiYjPvA6HKXpO0JL7zY6uuiEcJDl9gimZIUmPdzwZBYcN3UkfTnLprkLx GGDr/HYU8p9WY9chWhQzLElwA8pZSiNUkofAw6gva7ACjCC1IemA558u9T0bq689/cby Abdg50RECP+kN9cc5vMV1vFh8BYDg7xy2biCU897bBNjt013OR3YRIZh5DdYUPOBSntu mKykAJmBZ+8+lFF7ym6ilTDAbC+ADFU6QEIm7L4OeL94lOWkWI032F1ZkZ8lm3OHRDN1 POtRQ80RRGAKmS1MQE5KeNRnwCWP5DfMliGRMwboGQF1PsLaprXxFs1tYliSyRKBo1Bu /g9Q== X-Gm-Message-State: AOJu0Yx7vkcyESYd/zln6ybzioDzll/Dgc4yrZ0C2j7Q7Ivcg9W6dCLq xIkPCxh9LB+h1FwsENmPlxqzfowke8S5DDd6zIefJlc7arLtBCauX12Ety0EBA== X-Gm-Gg: ATEYQzyEVBaLTpIa0PU4AgqiP9xIyHMzXx5d8d4sJVIM3aTAVYZbbq0obvF31Ajx4A+ xn/FCTM6iGNAigg0ddMTcgCUeyZ72J9Wl2g9nCXfqFMG4C4y8mz81cEJsHk7TVd3WeS7kylMlIM kn2Fxx4HHV8LvupziGHa5iFKI+8trGFKn7irqBk01sKT4ypoN3PX3LiE/CYkLtrkFLuUtJ5LLuE eRzh7Z0r0FLp/nOgdMphXOz+DrtTicnRlYYsP0fi11d06Ee14jvD1ZnmbU/31cOdqBs7WMe3c0y +v89nXGBcSeh0mV0E19o01BrfWiSdZLet3j3+snzjXdQ3YObqcsFvgpNy/2M4pg7FG2VBLKVyZE DGU5iDuq/P3EXWmFqlmPZTSvRRSBwTMXVYIvU6vtm11htHqdyQzbIHifX9YF39rxqfrOKyzlLhL Wzans8oHLBsOXtLbY2ssfIJQb90i3OGFrVXC0UU4LCm4JmUHOVbxCtN5WqyM/xDbf7oCqs1kg5k X2+GsfVJuwnKFOGRzx9E4/cyJCaC/4dXmgvtvPukUJ2439kyeb/HOsnww== X-Received: by 2002:a05:6000:2502:b0:439:abcd:b2f6 with SMTP id ffacd0b85a97d-439abcdb576mr15242115f8f.27.1772488998506; Mon, 02 Mar 2026 14:03:18 -0800 (PST) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , qemu-arm@nongnu.org, "Michael S. Tsirkin" , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Helge Deller , Andrew Jeffery , Richard Henderson , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Steven Lee , Mark Cave-Ayland , Jamin Lin , Joel Stanley , Troy Lee , Bernhard Beschow Subject: [PATCH 12/12] hw/char/serial: Plug into reset framework Date: Mon, 2 Mar 2026 23:02:54 +0100 Message-ID: <20260302220254.1166849-13-shentey@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260302220254.1166849-1-shentey@gmail.com> References: <20260302220254.1166849-1-shentey@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::429; envelope-from=shentey@gmail.com; helo=mail-wr1-x429.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1772489067164139100 Content-Type: text/plain; charset="utf-8" Now that SerialState inherits from SysBusDevice we can take advantage of having the reset method called by the bus hierarchy rather than having to plug and unplug it manually. Signed-off-by: Bernhard Beschow --- hw/char/serial.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/hw/char/serial.c b/hw/char/serial.c index c58337bd20..c4537e5764 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -31,7 +31,6 @@ #include "chardev/char-serial.h" #include "qapi/error.h" #include "qemu/timer.h" -#include "system/reset.h" #include "system/runstate.h" #include "qemu/error-report.h" #include "trace.h" @@ -853,9 +852,9 @@ const VMStateDescription vmstate_serial =3D { } }; =20 -static void serial_reset(void *opaque) +static void serial_reset(DeviceState *dev) { - SerialState *s =3D opaque; + SerialState *s =3D SERIAL(dev); =20 if (s->watch_tag > 0) { g_source_remove(s->watch_tag); @@ -928,7 +927,6 @@ static void serial_realize(DeviceState *dev, Error **er= rp) s->modem_status_poll =3D timer_new_ns(QEMU_CLOCK_VIRTUAL, (QEMUTimerCB= *) serial_update_msl, s); =20 s->fifo_timeout_timer =3D timer_new_ns(QEMU_CLOCK_VIRTUAL, (QEMUTimerC= B *) fifo_timeout_int, s); - qemu_register_reset(serial_reset, s); =20 qemu_chr_fe_set_handlers(&s->chr, serial_can_receive1, serial_receive1, serial_event, serial_be_change, s, NULL, true= ); @@ -951,8 +949,6 @@ static void serial_unrealize(DeviceState *dev) =20 fifo8_destroy(&s->recv_fifo); fifo8_destroy(&s->xmit_fifo); - - qemu_unregister_reset(serial_reset, s); } =20 const MemoryRegionOps serial_io_ops =3D { @@ -982,6 +978,7 @@ static void serial_class_init(ObjectClass *klass, const= void *data) dc->user_creatable =3D false; dc->realize =3D serial_realize; dc->unrealize =3D serial_unrealize; + device_class_set_legacy_reset(dc, serial_reset); device_class_set_props(dc, serial_properties); } =20 --=20 2.53.0