Cover Letter Detail
Show a cover letter.
GET /api/1.0/covers/2175850/?format=api
{ "id": 2175850, "url": "http://patchwork.ozlabs.org/api/1.0/covers/2175850/?format=api", "project": { "id": 14, "url": "http://patchwork.ozlabs.org/api/1.0/projects/14/?format=api", "name": "QEMU Development", "link_name": "qemu-devel", "list_id": "qemu-devel.nongnu.org", "list_email": "qemu-devel@nongnu.org", "web_url": "", "scm_url": "", "webscm_url": "" }, "msgid": "<20251219-aspeed-sgpio-v5-0-fd5593178144@google.com>", "date": "2025-12-19T07:04:13", "name": "[v5,0/6] hw/gpio/aspeed_sgpio: Add Aspeed Serial GPIO (SGPIO) controller model", "submitter": { "id": 91652, "url": "http://patchwork.ozlabs.org/api/1.0/people/91652/?format=api", "name": "Yubin Zou", "email": "yubinz@google.com" }, "series": [ { "id": 485958, "url": "http://patchwork.ozlabs.org/api/1.0/series/485958/?format=api", "date": "2025-12-19T07:04:13", "name": "hw/gpio/aspeed_sgpio: Add Aspeed Serial GPIO (SGPIO) controller model", "version": 5, "mbox": "http://patchwork.ozlabs.org/series/485958/mbox/" } ], "headers": { "Return-Path": "<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=google.com header.i=@google.com header.a=rsa-sha256\n header.s=20230601 header.b=Ooy24Wlg;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)" ], "Received": [ "from lists.gnu.org (lists.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4dXdpb3Lsyz1y3t\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 19 Dec 2025 18:05:26 +1100 (AEDT)", "from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1vWUXc-0003mv-7e; Fri, 19 Dec 2025 02:04:44 -0500", "from eggs.gnu.org ([2001:470:142:3::10])\n by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from\n <3BvlEaQYKCl0TP6DIUBJJBG9.7JHL9HP-89Q9GIJIBIP.JMB@flex--yubinz.bounces.google.com>)\n id 1vWUXa-0003mZ-ND\n for qemu-devel@nongnu.org; Fri, 19 Dec 2025 02:04:42 -0500", "from mail-pg1-x54a.google.com ([2607:f8b0:4864:20::54a])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from\n <3BvlEaQYKCl0TP6DIUBJJBG9.7JHL9HP-89Q9GIJIBIP.JMB@flex--yubinz.bounces.google.com>)\n id 1vWUXY-0001Rk-Rp\n for qemu-devel@nongnu.org; Fri, 19 Dec 2025 02:04:42 -0500", "by mail-pg1-x54a.google.com with SMTP id\n 41be03b00d2f7-b6097ca315bso2417721a12.3\n for <qemu-devel@nongnu.org>; Thu, 18 Dec 2025 23:04:39 -0800 (PST)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=google.com; s=20230601; t=1766127879; x=1766732679; darn=nongnu.org;\n h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject\n :date:message-id:reply-to;\n bh=hV3jbe8mjBdMa5P+CZKc7SpagVzj6+YjdC3ehvY3rvY=;\n b=Ooy24WlgaXQSS0IlgqwWolgXuhrmEgTs4epUr8EbGiPphuhzQcV4OyNwkv8RoCQAAD\n mEGDKofTm6cUzyK+jGskYMWu+qpPSG8SJQt2Xz131DBNEx+eL5j89GFSuRMSAIpAyeSi\n BO8bYnXu+jUVZpaymJvGVlTJs+2RPdcbXMj1D4ILxqvWMeJRQ6gmtTmIXoBxta3bJIX4\n 3DjfbXVkbCUYcE32RjKLfXOM3dmw5YUUS/cepMWAu21y4g5HJzliprca130xZ4fTYHd2\n hki+1UDA46V3Oh+99ST1jvcgmI+Lpgpt/1FBkn8mYIpRUtoEHYMOKajjX0OyQQeqJs98\n RmFQ==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1766127879; x=1766732679;\n h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state\n :from:to:cc:subject:date:message-id:reply-to;\n bh=hV3jbe8mjBdMa5P+CZKc7SpagVzj6+YjdC3ehvY3rvY=;\n b=iQrFnnW2VBzzAdKh9AoUcgYHJyEQalsZd5SGWe52/H9gWMGCe1LnG+xnoLrINdrBwe\n jz4UzA3hliIb6+jnAq1bYwNXK6ZSpXF4re3sJsbuyQaygnSReXg8C5xV/INuQBneZ7Y2\n J/INuRbPwjAPXQCPSwpUBigEQX449JSguZgmxCtGgQhERMZs6eiy8jJnDfxBl1sm1yAc\n GFzqEJY0yZQVOf8jL1Kr7fwTeo2b18vty2cMNPFUARqLF3jU3QD+JoEGCA4B8WAiN92e\n QkOjhtYyHZxWMUYkehDI/8Nv+FTC1H5+kNuJfQZph8SfltsTDhdDuv8KkDGOJ8mxgj59\n 25ZQ==", "X-Gm-Message-State": "AOJu0YwTtO+Zsokz781/BRhDep22aFF9gLuangvEhOVywVu5f/SJZRUf\n 16uNUeuo5ewYewJIqHwBwUuRwSY4c19DTIlhNqSuTnsoPoz2Q2IGSfOaKsXo4DJjKCQ4qQPjTmJ\n FVEjPOM2knY8b4+gBA/XCXE3wf5eiQf1DxTglHS8ldhqD2JAtlv/b/pJgPW+mF1V4r2N/hwK/hr\n gPTqLlOOK1Q/Y1x5qne4LorUgrpQWXdYBjPMg=", "X-Google-Smtp-Source": "\n AGHT+IF/+lztHfc+Q6qUY0F37omOsr3Wj3VDIbfYlHK1ZUd7unRNHNzQj48n38qJFDTVJzgJl8LH9LERhek=", "X-Received": "from dlbbt5.prod.google.com ([2002:a05:7022:985:b0:11b:d8a1:4048])\n (user=yubinz job=prod-delivery.src-stubby-dispatcher) by\n 2002:a05:7022:985:b0:11b:a8e3:8468\n with SMTP id a92af1059eb24-121722fd206mr2276354c88.33.1766127878253; Thu, 18\n Dec 2025 23:04:38 -0800 (PST)", "Date": "Fri, 19 Dec 2025 07:04:13 +0000", "Mime-Version": "1.0", "X-B4-Tracking": "v=1; b=H4sIAO34RGkC/2XM3QqCMBjG8VuJHbd4t7npOuo+ooN9vNqgmriQQ\n rz3phCpHT4P/P4DSdgFTOS4G0iHfUghPvKQ+x1xV/NokAafN+HAJWMgqUktoqepaUOkzBfao3J\n olCKZtB3W4TXnzpe8ryE9Y/ee6z2b3m9IrUM9o0AtcAValEzV5tTE2Nzw4OKdTKWe/zQHvdE8a\n 10qlLUsNTj+p8VCM9hokTXayoKrhfeS/eliqcuNLrLmlbW28s5YASs9juMH5J3HEWMBAAA=", "X-Change-Id": "20251105-aspeed-sgpio-1d49de6cea66", "X-Mailer": "b4 0.14.2", "Message-ID": "<20251219-aspeed-sgpio-v5-0-fd5593178144@google.com>", "Subject": "[PATCH v5 0/6] hw/gpio/aspeed_sgpio: Add Aspeed Serial GPIO (SGPIO)\n controller model", "From": "Yubin Zou <yubinz@google.com>", "To": "qemu-devel@nongnu.org", "Cc": "\" =?utf-8?q?C=C3=A9dric_Le_Goater?= \" <clg@kaod.org>,\n Peter Maydell <peter.maydell@linaro.org>,\n Steven Lee <steven_lee@aspeedtech.com>, Troy Lee <leetroy@gmail.com>,\n Jamin Lin <jamin_lin@aspeedtech.com>,\n Andrew Jeffery <andrew@codeconstruct.com.au>, Joel Stanley <joel@jms.id.au>,\n Fabiano Rosas <farosas@suse.de>, Laurent Vivier <lvivier@redhat.com>,\n Paolo Bonzini <pbonzini@redhat.com>,\n Kane-Chen-AS <kane_chen@aspeedtech.com>,\n Nabih Estefan <nabihestefan@google.com>, qemu-arm@nongnu.org,\n Yubin Zou <yubinz@google.com>,\n \" =?utf-8?q?C=C3=A9dric_Le_Goater?= \" <clg@redhat.com>", "Content-Type": "text/plain; charset=\"utf-8\"", "Received-SPF": "pass client-ip=2607:f8b0:4864:20::54a;\n envelope-from=3BvlEaQYKCl0TP6DIUBJJBG9.7JHL9HP-89Q9GIJIBIP.JMB@flex--yubinz.bounces.google.com;\n helo=mail-pg1-x54a.google.com", "X-Spam_score_int": "-95", "X-Spam_score": "-9.6", "X-Spam_bar": "---------", "X-Spam_report": "(-9.6 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001,\n DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001,\n USER_IN_DEF_DKIM_WL=-7.5 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-devel.nongnu.org>", "List-Unsubscribe": "<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>", "List-Archive": "<https://lists.nongnu.org/archive/html/qemu-devel>", "List-Post": "<mailto:qemu-devel@nongnu.org>", "List-Help": "<mailto:qemu-devel-request@nongnu.org?subject=help>", "List-Subscribe": "<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>", "Errors-To": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org", "Sender": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org" }, "content": "This series introduces a model for the Aspeed Serial GPIO (SGPIO) controller,\ncommonly found on Aspeed SoCs such as the AST2700. The SGPIO peripheral\nprovides a large number of GPIO pins that can be controlled and monitored\nserially.\n\nImprovement to QEMU:\nThese patches enhance QEMU's hardware emulation capabilities for platforms\nusing Aspeed SoCs, particularly for BMC simulations. By modeling the SGPIO\ncontroller, QEMU can more accurately represent the hardware, allowing for\nbetter development and testing of firmware and software that relies on these\nGPIOs for various functions like sensor monitoring, presence detect, and\nsystem control signals.\n\nImpact (Before/After):\n\nBefore:\nQEMU lacked a model for the Aspeed SGPIO controller. Any guest software\nattempting to interact with the SGPIO register space would find no device.\nFirmware features depending on SGPIO pin states or interrupts could not be\ntested in QEMU.\n\nAfter:\nQEMU emulates the Aspeed SGPIO controller on supported machines (e.g.,\nast2700-evb).\n- Guest firmware can configure SGPIO pins, set output values, and read input\n values through the memory-mapped registers.\n- External entities (like test scripts or other QEMU components) can interact\n with the pins via QOM properties (e.g., to simulate external signal changes).\n Path example: /machine/soc/sgpio[0]/sgpio0\n- The model generates interrupts based on input pin transitions, according to\n the configured mode (level/edge), enabling testing of interrupt handlers.\n\nSigned-off-by: Yubin Zou <yubinz@google.com>\n---\nChanges in v5:\n- Fix logging, typo and indentation in 1/6.\n- Fix typo and empty line in 3/6.\n- Fix duplicate definition in 6/6.\n- Link to v4: https://lore.kernel.org/qemu-devel/20251217-aspeed-sgpio-v4-0-28bbb8dcab30@google.com\n\nChanges in v4:\n- Fix indentation issue, replace SysBusDevice by SysBusDeviceClass,\n remove unused function in 1/6.\n- Fix g_autofree usage in 2/6.\n- Switch to use %03d in unit test, remove unused headers in 6/6. \n- Link to v3: https://lore.kernel.org/qemu-devel/20251210-aspeed-sgpio-v3-0-eb8b0cf3dd51@google.com\n\nChanges in v3:\n- Fix commit message typo and address several review feedback in\n commit 2/6.\n- Switch to use g_autofree and drop g_free.\n- Use \"%03d\" instead of \"%d\".\n- Link to v2: https://lore.kernel.org/qemu-devel/20251209-aspeed-sgpio-v2-0-976e5f5790c2@google.com\n\nChanges in v2:\nSplit the v1 into smaller commits and reorder it for better review:\n- Link to v1: https://lore.kernel.org/qemu-devel/20251106-aspeed-sgpio-v1-0-b026093716fa@google.com\n\n---\nYubin Zou (6):\n hw/gpio/aspeed_sgpio: Add basic device model for Aspeed SGPIO\n hw/gpio/aspeed_sgpio: Add QOM property accessors for SGPIO pins\n hw/gpio/aspeed_sgpio: Implement SGPIO interrupt handling\n hw/arm/aspeed_soc: Update Aspeed SoC to support two SGPIO controllers\n hw/arm/aspeed_ast27x0: Wire SGPIO controller to AST2700 SoC\n test/qtest: Add Unit test for Aspeed SGPIO\n\n include/hw/arm/aspeed_soc.h | 8 +-\n include/hw/gpio/aspeed_sgpio.h | 68 ++++++++\n hw/arm/aspeed_ast10x0.c | 6 +-\n hw/arm/aspeed_ast27x0.c | 26 +++\n hw/gpio/aspeed_sgpio.c | 346 +++++++++++++++++++++++++++++++++++++++\n tests/qtest/ast2700-sgpio-test.c | 165 +++++++++++++++++++\n hw/gpio/meson.build | 1 +\n tests/qtest/meson.build | 1 +\n 8 files changed, 616 insertions(+), 5 deletions(-)\n---\nbase-commit: 917ac07f9aef579b9538a81d45f45850aba42906\nchange-id: 20251105-aspeed-sgpio-1d49de6cea66\n\nBest regards," }