[{"id":3682156,"web_url":"http://patchwork.ozlabs.org/comment/3682156/","msgid":"<9febe685-6cb0-4c24-b601-b777ac7ef0ec@linaro.org>","list_archive_url":null,"date":"2026-04-24T17:26:20","subject":"Re: [PATCH] hw/core/register: add register_array_get_owner","submitter":{"id":85046,"url":"http://patchwork.ozlabs.org/api/people/85046/","name":"Philippe Mathieu-Daudé","email":"philmd@linaro.org"},"content":"On 24/4/26 17:56, Luc Michel wrote:\n> Add the register_array_get_owner function to the register API. This\n> function can be used to retrieve the device owning the given\n> RegisterInfoArray.\n> \n> This was previously done inline by some devices.\n> 5c6367bc1c8850f74812eeaaf87cff9911be58de modified the way register\n> blocks are created and parented to the device. Since this is an\n> implementation detail of the register API, it makes sense to have a\n> function for this.\n> \n> Use it in the Versal OSPI and Versal/ZynqMP eFuse models instead of\n> tinkering with the API internals.\nFixes: 5c6367bc1c8 (\"hw/core/register: add the REGISTER_ARRAY type\")\n\n> Resolves: https://gitlab.com/qemu-project/qemu/-/work_items/3421\n> Resolves: https://gitlab.com/qemu-project/qemu/-/work_items/3422\n> Resolves: https://gitlab.com/qemu-project/qemu/-/work_items/3423\n> Signed-off-by: Luc Michel <luc.michel@amd.com>\n> ---\n>   include/hw/core/register.h        | 11 +++++++++++\n>   hw/core/register.c                |  5 +++++\n>   hw/nvram/xlnx-versal-efuse-ctrl.c |  4 ++--\n>   hw/nvram/xlnx-zynqmp-efuse.c      |  4 ++--\n>   hw/ssi/xlnx-versal-ospi.c         | 10 +++-------\n>   5 files changed, 23 insertions(+), 11 deletions(-)\n\n\n> diff --git a/hw/core/register.c b/hw/core/register.c\n> index c3f3c936e70..99ca5e17758 100644\n> --- a/hw/core/register.c\n> +++ b/hw/core/register.c\n> @@ -320,10 +320,15 @@ static void register_array_finalize(Object *obj)\n>       RegisterInfoArray *r_array = REGISTER_ARRAY(obj);\n>   \n>       g_free(r_array->r);\n>   }\n>   \n> +DeviceState *register_array_get_owner(const RegisterInfoArray *reg_array)\n> +{\n> +    return DEVICE(OBJECT(reg_array)->parent);\n\nOdd, we have object_class_get_parent() but no object_get_parent().\n\n> +}\n\nReviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>","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=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=fzqyJTn9;\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=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.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 4g2KdQ1vy1z1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 25 Apr 2026 03:26:50 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wGKIS-0004yf-Vw; Fri, 24 Apr 2026 13:26:33 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <philmd@linaro.org>) id 1wGKIN-0004xv-0Q\n for qemu-devel@nongnu.org; Fri, 24 Apr 2026 13:26:27 -0400","from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <philmd@linaro.org>) id 1wGKIK-00022t-ST\n for qemu-devel@nongnu.org; Fri, 24 Apr 2026 13:26:26 -0400","by mail-wm1-x32a.google.com with SMTP id\n 5b1f17b1804b1-4890098abbaso61422915e9.0\n for <qemu-devel@nongnu.org>; Fri, 24 Apr 2026 10:26:24 -0700 (PDT)","from [192.168.69.210] (88-187-86-199.subs.proxad.net.\n [88.187.86.199]) by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-48a6124d7e7sm173970705e9.5.2026.04.24.10.26.20\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Fri, 24 Apr 2026 10:26:21 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1777051582; x=1777656382; darn=nongnu.org;\n h=content-transfer-encoding:in-reply-to:content-language:from\n :references:cc:to:subject:user-agent:mime-version:date:message-id\n :from:to:cc:subject:date:message-id:reply-to;\n bh=Ngp/pbv0tw1CybRWld/cPRbAx+/edxPPRAltYCT7RR0=;\n b=fzqyJTn9fqxnR7mQdPVK+wvR2DW9FQ2EInHty3+eBvYwurINm2TAOeKM13MR5/UkL3\n xu01MI/Hjn9TGl8jq0MZDXm0aaUD1I6JBrCbwtUQPqz2AphLrsB6PWDq3eKfNAB/b1GQ\n CnCk/OVDoD4o33tiTIb5F4p/W2in9tK/F2ifn+eSL2NaWl39MFVuDy3HroMR3ayCARGe\n fSOBC5zo4eEb/g1cbg4iop9F7dLN+E2w/Qs5ktMVTYd6AITr/MMkpstGNIQHPzlzNMzg\n /PpEC9oavE+MUM9JImzRoGnh2dWouI1MmbKKnnu/SrAGBl56uWJ/QGr8i7LZ89xzNr2G\n gxTw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777051582; x=1777656382;\n h=content-transfer-encoding:in-reply-to:content-language:from\n :references:cc:to:subject:user-agent:mime-version:date:message-id\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=Ngp/pbv0tw1CybRWld/cPRbAx+/edxPPRAltYCT7RR0=;\n b=asa3vCaZNjHQlJEovqfr5JFYjkQsCEjQdHo2wQBvIUfrxG5e7Bg3zEsDtNzfZfEeiV\n KmCBT+ZAl+jaUn/P/r6nAraUVpPFKvw84GpjoZAlpo1THOyWOsr7K/DO9y0cnCPoo+C2\n hncG/HxodfFQi/h0tHEYxQMdqFAEEdxz1OjX2A65rEYwyFtToYcvSS9bebIKPNw3EFHJ\n 7k2YVYhtEFc2KOzdHL23h2P8u2QSAR264x+DWZemw0RbDFTH7mv1SWq9/soYf2celPQE\n UgaKSS3PMmKag+V4HaitKT5qKFksKxmx6kIMBvhDivt6HFIi52OvlUBVv32iGusctB/+\n Z8jA==","X-Forwarded-Encrypted":"i=1;\n AFNElJ9SEeFa+vC/PNMqhyITu2mHxaDvf8iEX6oxH/e9J3wI+p9R6nqI5bAURJgxNz0v1R5W2sQeNVJ5C7i4@nongnu.org","X-Gm-Message-State":"AOJu0YwSYwiKHGQk8kECG1zNhAUW9w++OY8OEGlezvf3fY+xyuaKJsxK\n Yt2VE81Z0Aum8PEuTtwdqOFTsO8YpSvSaDJFy96Z7SfXYzzZHMc574VV2XUQOjlC9N0=","X-Gm-Gg":"AeBDietLxF9iP9eLZEzlyimlaf0pAzdCFI+dG3+zwYfob0g6rwPucSU7isCjkgN2u7Q\n 7f+ozCe48TuthCAOLo8I/HumwI6+NzqpDZ3X8OrVkX+LUgQV7U97eCNR4A91pUwv7/AFTfnweAl\n T8vjU/XCodC/dfytlBW2t33RFj7p39ERjBV54ooNffVYGcKYlYo+U7T0I4Wbkh3KpDba7mogUEB\n Yn5+9+Ej694YP56eVzGo1FWcvTktoQG7ozFx3UqInOxEZ1puKQiHcO0UFmmbFRVvnBYurqNKFgD\n nsqPjdtiTHD6lU/ok4vOsc1GZ5jBrQOBVOdDVT3dfOpGqyuaWUNTUjAqm4oKDxcvxtiCacs4k4B\n VOFXyK9UNAjHD+tMKSyOCU4Yq8JdngUHc6e+uakz63VA0ZDJCl5iW84a0W/vE3VagzVKUJ3igyj\n KzNnUApSEiM+Yaxdzg5cYJ+5UTE70sD7YD2ipyJTu5YbrP0CibzAD8YSMcpCF8/PUso9J6yvPEK\n 8oe","X-Received":"by 2002:a05:600c:8908:b0:48a:58e1:6d02 with SMTP id\n 5b1f17b1804b1-48a58e16eb2mr161840295e9.19.1777051582224;\n Fri, 24 Apr 2026 10:26:22 -0700 (PDT)","Message-ID":"<9febe685-6cb0-4c24-b601-b777ac7ef0ec@linaro.org>","Date":"Fri, 24 Apr 2026 19:26:20 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH] hw/core/register: add register_array_get_owner","To":"Luc Michel <luc.michel@amd.com>, qemu-devel@nongnu.org","Cc":"Thomas Huth <thuth@redhat.com>, Peter Maydell <peter.maydell@linaro.org>,\n Francisco Iglesias <francisco.iglesias@amd.com>,\n Frederic Konrad <frederic.konrad@amd.com>,\n \"Edgar E . Iglesias\" <edgar.iglesias@amd.com>,\n Alistair Francis <alistair@alistair23.me>, qemu-arm@nongnu.org","References":"<20260424155646.533334-1-luc.michel@amd.com>","From":"=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>","Content-Language":"en-US","In-Reply-To":"<20260424155646.533334-1-luc.michel@amd.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","Received-SPF":"pass client-ip=2a00:1450:4864:20::32a;\n envelope-from=philmd@linaro.org; helo=mail-wm1-x32a.google.com","X-Spam_score_int":"-20","X-Spam_score":"-2.1","X-Spam_bar":"--","X-Spam_report":"(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n 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,\n 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 <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"}},{"id":3682232,"web_url":"http://patchwork.ozlabs.org/comment/3682232/","msgid":"<CAKmqyKMCrzq0nsW1Sp79Cg6NbzKWuU5k++T5Z--Oc0SHqV9CbA@mail.gmail.com>","list_archive_url":null,"date":"2026-04-25T00:13:23","subject":"Re: [PATCH] hw/core/register: add register_array_get_owner","submitter":{"id":64571,"url":"http://patchwork.ozlabs.org/api/people/64571/","name":"Alistair Francis","email":"alistair23@gmail.com"},"content":"On Sat, Apr 25, 2026 at 1:59 AM Luc Michel <luc.michel@amd.com> wrote:\n>\n> Add the register_array_get_owner function to the register API. This\n> function can be used to retrieve the device owning the given\n> RegisterInfoArray.\n>\n> This was previously done inline by some devices.\n> 5c6367bc1c8850f74812eeaaf87cff9911be58de modified the way register\n> blocks are created and parented to the device. Since this is an\n> implementation detail of the register API, it makes sense to have a\n> function for this.\n>\n> Use it in the Versal OSPI and Versal/ZynqMP eFuse models instead of\n> tinkering with the API internals.\n>\n> Resolves: https://gitlab.com/qemu-project/qemu/-/work_items/3421\n> Resolves: https://gitlab.com/qemu-project/qemu/-/work_items/3422\n> Resolves: https://gitlab.com/qemu-project/qemu/-/work_items/3423\n> Signed-off-by: Luc Michel <luc.michel@amd.com>\n\nReviewed-by: Alistair Francis <alistair.francis@wdc.com>\n\nAlistair\n\n> ---\n>  include/hw/core/register.h        | 11 +++++++++++\n>  hw/core/register.c                |  5 +++++\n>  hw/nvram/xlnx-versal-efuse-ctrl.c |  4 ++--\n>  hw/nvram/xlnx-zynqmp-efuse.c      |  4 ++--\n>  hw/ssi/xlnx-versal-ospi.c         | 10 +++-------\n>  5 files changed, 23 insertions(+), 11 deletions(-)\n>\n> diff --git a/include/hw/core/register.h b/include/hw/core/register.h\n> index 1f265f4ed71..c6f648fe95e 100644\n> --- a/include/hw/core/register.h\n> +++ b/include/hw/core/register.h\n> @@ -207,6 +207,17 @@ RegisterInfoArray *register_init_block64(DeviceState *owner,\n>                                           uint64_t *data,\n>                                           const MemoryRegionOps *ops,\n>                                           bool debug_enabled,\n>                                           uint64_t memory_size);\n>\n> +/**\n> + * register_array_get_owner\n> + *\n> + * Retrieve the device owning the register info array @reg_array.\n> + *\n> + * @reg_array The register info array to retrieve the owner from\n> + *\n> + * Returns: the device owning @reg_array\n> + */\n> +DeviceState *register_array_get_owner(const RegisterInfoArray *reg_array);\n> +\n>  #endif\n> diff --git a/hw/core/register.c b/hw/core/register.c\n> index c3f3c936e70..99ca5e17758 100644\n> --- a/hw/core/register.c\n> +++ b/hw/core/register.c\n> @@ -320,10 +320,15 @@ static void register_array_finalize(Object *obj)\n>      RegisterInfoArray *r_array = REGISTER_ARRAY(obj);\n>\n>      g_free(r_array->r);\n>  }\n>\n> +DeviceState *register_array_get_owner(const RegisterInfoArray *reg_array)\n> +{\n> +    return DEVICE(OBJECT(reg_array)->parent);\n> +}\n> +\n>  static const TypeInfo register_array_info = {\n>      .name  = TYPE_REGISTER_ARRAY,\n>      .parent = TYPE_OBJECT,\n>      .instance_size = sizeof(RegisterInfoArray),\n>      .instance_finalize = register_array_finalize,\n> diff --git a/hw/nvram/xlnx-versal-efuse-ctrl.c b/hw/nvram/xlnx-versal-efuse-ctrl.c\n> index 69acdfa3047..f5d5587cb65 100644\n> --- a/hw/nvram/xlnx-versal-efuse-ctrl.c\n> +++ b/hw/nvram/xlnx-versal-efuse-ctrl.c\n> @@ -617,15 +617,15 @@ static const RegisterAccessInfo efuse_ctrl_regs_info[] = {\n>  static void efuse_ctrl_reg_write(void *opaque, hwaddr addr,\n>                                   uint64_t data, unsigned size)\n>  {\n>      RegisterInfoArray *reg_array = opaque;\n>      XlnxVersalEFuseCtrl *s;\n> -    Object *dev;\n> +    DeviceState *dev;\n>\n>      assert(reg_array != NULL);\n>\n> -    dev = reg_array->mem.owner;\n> +    dev = register_array_get_owner(reg_array);\n>      assert(dev);\n>\n>      s = XLNX_VERSAL_EFUSE_CTRL(dev);\n>\n>      if (addr != A_WR_LOCK && s->regs[R_WR_LOCK]) {\n> diff --git a/hw/nvram/xlnx-zynqmp-efuse.c b/hw/nvram/xlnx-zynqmp-efuse.c\n> index e6bc54fc6bd..028120f824d 100644\n> --- a/hw/nvram/xlnx-zynqmp-efuse.c\n> +++ b/hw/nvram/xlnx-zynqmp-efuse.c\n> @@ -722,15 +722,15 @@ static RegisterAccessInfo zynqmp_efuse_regs_info[] = {\n>  static void zynqmp_efuse_reg_write(void *opaque, hwaddr addr,\n>                                     uint64_t data, unsigned size)\n>  {\n>      RegisterInfoArray *reg_array = opaque;\n>      XlnxZynqMPEFuse *s;\n> -    Object *dev;\n> +    DeviceState *dev;\n>\n>      assert(reg_array != NULL);\n>\n> -    dev = reg_array->mem.owner;\n> +    dev = register_array_get_owner(reg_array);\n>      assert(dev);\n>\n>      s = XLNX_ZYNQMP_EFUSE(dev);\n>\n>      if (addr != A_WR_LOCK && s->regs[R_WR_LOCK]) {\n> diff --git a/hw/ssi/xlnx-versal-ospi.c b/hw/ssi/xlnx-versal-ospi.c\n> index 467f0ce7033..e25e4c26c2e 100644\n> --- a/hw/ssi/xlnx-versal-ospi.c\n> +++ b/hw/ssi/xlnx-versal-ospi.c\n> @@ -1567,19 +1567,15 @@ static RegisterAccessInfo ospi_regs_info[] = {\n>          .ro = 0xffffffff,\n>      }\n>  };\n>\n>  /* Return dev-obj from reg-region created by register_init_block32 */\n> -static XlnxVersalOspi *xilinx_ospi_of_mr(void *mr_accessor)\n> +static XlnxVersalOspi *xilinx_ospi_of_mr(void *opaque)\n>  {\n> -    RegisterInfoArray *reg_array = mr_accessor;\n> -    Object *dev;\n> +    RegisterInfoArray *reg_array = REGISTER_ARRAY(opaque);\n>\n> -    dev = reg_array->mem.owner;\n> -    assert(dev);\n> -\n> -    return XILINX_VERSAL_OSPI(dev);\n> +    return XILINX_VERSAL_OSPI(register_array_get_owner(reg_array));\n>  }\n>\n>  static void ospi_write(void *opaque, hwaddr addr, uint64_t value,\n>          unsigned int size)\n>  {\n> --\n> 2.53.0\n>\n>","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=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=WiBP7/0D;\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=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.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 4g2Vh11QvXz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 25 Apr 2026 10:14:39 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wGQej-0006GH-Kf; Fri, 24 Apr 2026 20:13:57 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <alistair23@gmail.com>)\n id 1wGQei-0006Fs-0l\n for qemu-devel@nongnu.org; Fri, 24 Apr 2026 20:13:56 -0400","from mail-ej1-x62e.google.com ([2a00:1450:4864:20::62e])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <alistair23@gmail.com>)\n id 1wGQeg-0003cD-4q\n for qemu-devel@nongnu.org; Fri, 24 Apr 2026 20:13:55 -0400","by mail-ej1-x62e.google.com with SMTP id\n a640c23a62f3a-b9c01854477so370161766b.0\n for <qemu-devel@nongnu.org>; Fri, 24 Apr 2026 17:13:53 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; t=1777076032; cv=none;\n d=google.com; s=arc-20240605;\n b=ARhkwXFHhgN79oGKsz4pqS72rtODbOE3zmBGGbwoyoLwus3yuhbKKJdaOOpg4JoiK8\n MotZ7PKGBqCG4fEpMeeIELKymGQIhqndNnvNyBroj0/WF6XJd77YrAgST1H/T4s2stAG\n O0pN7TNADkqaRtElJjzzFbOD45pxO7GtsweCiWfU7ewK340eFGQm5iKZ2JMhJ5VFlOIu\n ChsafkYVJn/dsqc9a2csMtQbQa4m5iI3RP2T1LJ3waABYoJcccKNplPR6pLcVCFS2iKl\n IEPpitichkByzZILEe/dLUXSITu+Spb3pnqb8rcG1jBFCWRq1MpBdxP9Q6nL3JU1GhyF\n LG6g==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:dkim-signature;\n bh=m3wMEMa5c5ReChl1GLvrs3VS+RI2A4zI4ZRvGS0z4UY=;\n fh=ZOeTZOxeYk4TO1Nn5fwBbLfAz9daWBz/xhPajQ3q3HM=;\n b=hu70j+1GVv7TPsMJTBp13/GwK9XEdCP7RJKfyyuQD7INrdAEe+SKMDyOrs5b1C8wKc\n 1/M2RAQjJEyuNVOy6Lxhs1Xg+u5Z9vT9x3ujrYFgGY3KZvFxSde74Ow5t5et869adsAM\n X+YN6GntQl2z+juEJR2SQXYvzXOPie4ZuTeY5/FENSYBX+y8E5LwX17595dBgivt8X2Y\n NmCdjVcyVsf0A+hMlVRtMP4mFbl56DNNysnEQgTMQOhQG8M/4fTD37EdnJaEs1y7MxVF\n y+ARCcSIpTkKbrR4TmmNG5sRa+jbKcTdJNAT2EVirh5tOqsdRzlozi4+Bbe7EjtTvdf4\n PiZg==; darn=nongnu.org","ARC-Authentication-Results":"i=1; mx.google.com; arc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1777076032; x=1777680832; darn=nongnu.org;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:from:to:cc:subject:date\n :message-id:reply-to;\n bh=m3wMEMa5c5ReChl1GLvrs3VS+RI2A4zI4ZRvGS0z4UY=;\n b=WiBP7/0DfQAhDpjd86lRA3dI/jvhQoHjqSSgSngtY3GQ/44/wDhuF1uvQHNvful9u4\n 1BQq4Oi3GZs5tES8rH4TTzRgd7wbkcZilkzSXcDwEtQV9pK0+42yT6qYafUhDfHvEZnW\n 2KZLloDuslu3ybzxWqMUH70AdO5KRo2GqHBa2SruexlNmCfbtGG3o+tcd2hwbnCKAniq\n F710Ku3HU2yrhivgjNpwbAgwM8ISkqGtoAV3xB0kGxAwAWipbvXTIsQK7GrDi4eneGP6\n 8NtytwAj6p5x9ILIOOmjMnBkdFI5EgPkE00l4aRicxZYcm0KF+9/l+frGoqybAI9Yp+f\n GbVQ==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777076032; x=1777680832;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=m3wMEMa5c5ReChl1GLvrs3VS+RI2A4zI4ZRvGS0z4UY=;\n b=GPrdpUTGCfRgnMeARbpPrQ/j+z6aqiGg/YruOJcL8cGWYBhhGghHqSCDLpC7D+FLgH\n PlfaJSQFEJ/+LJOKPFL5jTsJHF8b7SL3eRYgf6UPS1yEVix8Jg+wzrR5SHVBH1ZZIDxM\n vMFvOmkSjfUled9H22CLZc9ZmLuu61anDevztCiq0qU1IBwl7MAwwwdvgZCiFlAl+wkX\n ePZmwdTS1K/w0MjAGZPgs82W1FZKTigiZ791iCiIe17naz9zoHTZKRhDs9HH62Y8aZoW\n HRp9/Nc9F8+GTSyn0OQsAznCOnLU1c395uIsuu35NUVY06qNhIT8xsnGOA5VtsgqzaBQ\n Sd9g==","X-Gm-Message-State":"AOJu0Yw0ZAurzLga1OQ65eQpEJTa925ZBgA3MXGX/y7xITcB4ZVpFmkn\n D1+/lTdYJO8Xs9YyUUHZ9kejC2FAUfxd0khmODp6xGC11RY/FcfgbcNaqfVG/WoydxKdsZD6EKU\n upuGQ/gsNn6yTBFzAitSDA0Uc1jVaTrU=","X-Gm-Gg":"AeBDievIAt9lqXZFVGq4fAF2C2WN/NxCLecG5RWC7bGYXkKsyPHSfG8m0PDa2LhmBO5\n sYlMfX//dO1KZWVOSx526OWHr2AfCjiK/TdnWn9u9RvkI0ETlEAsaA03Dgj2NkCSMkSLHdeiV8C\n Nu53xcKB6EkwdjtcFcvDjWDDMuXXJJnvOltNOZh4nnFqaGgAoOA6SUS3bhh0z5Pfo5Hq7g134jI\n 3Y+r6Qm8/z8Tm51hdjX/qvXN9PR7krLvfqre8+00HrRG6GQ8txQ0YAU+LvNxn4t6u1PTelLE3Lf\n xY0zElilpCDXplnUk8k=","X-Received":"by 2002:a17:906:794a:b0:bae:642a:8712 with SMTP id\n a640c23a62f3a-bae642a8acamr191160166b.26.1777076031668; Fri, 24 Apr 2026\n 17:13:51 -0700 (PDT)","MIME-Version":"1.0","References":"<20260424155646.533334-1-luc.michel@amd.com>","In-Reply-To":"<20260424155646.533334-1-luc.michel@amd.com>","From":"Alistair Francis <alistair23@gmail.com>","Date":"Sat, 25 Apr 2026 10:13:23 +1000","X-Gm-Features":"AQROBzAFJiI4nyra7qV9fRvrp2aQ5CV4VgAc0Nn9rNmV2XrktoEuooJ8d28RF1A","Message-ID":"\n <CAKmqyKMCrzq0nsW1Sp79Cg6NbzKWuU5k++T5Z--Oc0SHqV9CbA@mail.gmail.com>","Subject":"Re: [PATCH] hw/core/register: add register_array_get_owner","To":"Luc Michel <luc.michel@amd.com>","Cc":"qemu-devel@nongnu.org, Thomas Huth <thuth@redhat.com>,\n  Peter Maydell <peter.maydell@linaro.org>,\n Francisco Iglesias <francisco.iglesias@amd.com>,\n  Frederic Konrad <frederic.konrad@amd.com>,\n \"Edgar E . Iglesias\" <edgar.iglesias@amd.com>, =?utf-8?q?Philippe_Mathieu-D?=\n\t=?utf-8?q?aud=C3=A9?= <philmd@linaro.org>,\n  Alistair Francis <alistair@alistair23.me>, qemu-arm@nongnu.org","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","Received-SPF":"pass client-ip=2a00:1450:4864:20::62e;\n envelope-from=alistair23@gmail.com; helo=mail-ej1-x62e.google.com","X-Spam_score_int":"-17","X-Spam_score":"-1.8","X-Spam_bar":"-","X-Spam_report":"(-1.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001,\n RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,\n 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 <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"}},{"id":3682259,"web_url":"http://patchwork.ozlabs.org/comment/3682259/","msgid":"<b39b576f-e0d6-43e2-aa72-18ca53d0cb1d@redhat.com>","list_archive_url":null,"date":"2026-04-25T06:41:49","subject":"Re: [PATCH] hw/core/register: add register_array_get_owner","submitter":{"id":66152,"url":"http://patchwork.ozlabs.org/api/people/66152/","name":"Thomas Huth","email":"thuth@redhat.com"},"content":"On 24/04/2026 17.56, Luc Michel wrote:\n> Add the register_array_get_owner function to the register API. This\n> function can be used to retrieve the device owning the given\n> RegisterInfoArray.\n> \n> This was previously done inline by some devices.\n> 5c6367bc1c8850f74812eeaaf87cff9911be58de modified the way register\n> blocks are created and parented to the device. Since this is an\n> implementation detail of the register API, it makes sense to have a\n> function for this.\n> \n> Use it in the Versal OSPI and Versal/ZynqMP eFuse models instead of\n> tinkering with the API internals.\n> \n> Resolves: https://gitlab.com/qemu-project/qemu/-/work_items/3421\n> Resolves: https://gitlab.com/qemu-project/qemu/-/work_items/3422\n> Resolves: https://gitlab.com/qemu-project/qemu/-/work_items/3423\n> Signed-off-by: Luc Michel <luc.michel@amd.com>\n> ---\n>   include/hw/core/register.h        | 11 +++++++++++\n>   hw/core/register.c                |  5 +++++\n>   hw/nvram/xlnx-versal-efuse-ctrl.c |  4 ++--\n>   hw/nvram/xlnx-zynqmp-efuse.c      |  4 ++--\n>   hw/ssi/xlnx-versal-ospi.c         | 10 +++-------\n>   5 files changed, 23 insertions(+), 11 deletions(-)\n\nThanks for the fix!\n\nTested-by: Thomas Huth <thuth@redhat.com>","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 (1024-bit key;\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=be6loxnT;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=google header.b=KHwuRUFo;\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=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.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 4g2gJ04vwpz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 25 Apr 2026 16:42:55 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wGWiH-0004TG-OP; Sat, 25 Apr 2026 02:42:01 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <thuth@redhat.com>) id 1wGWiF-0004Sx-0t\n for qemu-devel@nongnu.org; Sat, 25 Apr 2026 02:42:00 -0400","from us-smtp-delivery-124.mimecast.com ([170.10.129.124])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <thuth@redhat.com>) id 1wGWiC-00039K-JK\n for qemu-devel@nongnu.org; Sat, 25 Apr 2026 02:41:58 -0400","from mail-wr1-f69.google.com (mail-wr1-f69.google.com\n [209.85.221.69]) by relay.mimecast.com with ESMTP with STARTTLS\n (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id\n us-mta-223-2xVJLHbbM7Wz_ZwlT-P0Kg-1; Sat, 25 Apr 2026 02:41:53 -0400","by mail-wr1-f69.google.com with SMTP id\n ffacd0b85a97d-43d7d03e1e7so6741560f8f.3\n for <qemu-devel@nongnu.org>; Fri, 24 Apr 2026 23:41:53 -0700 (PDT)","from [192.168.0.9] ([47.64.114.147])\n by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-488fc10777csm723077695e9.8.2026.04.24.23.41.50\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Fri, 24 Apr 2026 23:41:50 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1777099315;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n content-transfer-encoding:content-transfer-encoding:\n in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;\n bh=q+e64NFmAD68oggXK6Te0WPNk6cwZLiisHVj9/F8tDw=;\n b=be6loxnTQs8VSLcEKeVczaVKi/MgCU88RchlZHf/1bei3FbhWUXXBex8U9CbHV+9OTcYCf\n DWcKfGS8HWa/LAirAVnzTVb5W+ahmjkhxrCRfH3gCcpJ50IXuhhpQ8ABYsUQJbJtE1Nniv\n Mt4Ui7+asrlJVWclsP5O7j0/SRZ8QpM=","v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=redhat.com; s=google; t=1777099312; x=1777704112; darn=nongnu.org;\n h=content-transfer-encoding:in-reply-to:autocrypt:from\n :content-language:references:cc:to:subject:user-agent:mime-version\n :date:message-id:from:to:cc:subject:date:message-id:reply-to;\n bh=q+e64NFmAD68oggXK6Te0WPNk6cwZLiisHVj9/F8tDw=;\n b=KHwuRUFovVne5y7YTzqt5QFyuMrPzLyexx3c18Mh9XXpdvolrWZPmRDqYP/XfFi9IS\n zJeLtdSx40/cVINXyava67+r2JroaowzTd6/wjW2RKaxmz2oebcAThuInwQpbme7e4JZ\n mjLiURmV9mD8DlZFYjyUv5rvpJVSHMD9+I/nfXmTnX32A/K4DWVnfewgJNJysoJsTRMn\n g2YeQhI7Rb9DxFzcNLcm4yW+cY+lecI5z9NYyvUvf2kfNJXDsEKpN7CtJ2eEz39HeOUi\n PCgbB5s05cgFuc+vicEY1DEsERMfh+6NcSgokZSinKaGnY8bQTKWPZAnMrzKhcjXABd6\n FoTw=="],"X-MC-Unique":"2xVJLHbbM7Wz_ZwlT-P0Kg-1","X-Mimecast-MFC-AGG-ID":"2xVJLHbbM7Wz_ZwlT-P0Kg_1777099312","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777099312; x=1777704112;\n h=content-transfer-encoding:in-reply-to:autocrypt:from\n :content-language:references:cc:to:subject:user-agent:mime-version\n :date:message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=q+e64NFmAD68oggXK6Te0WPNk6cwZLiisHVj9/F8tDw=;\n b=SHxT0JucFY18F+Fmd+LsELIgl579s/f/GAV6UbilBNnE+8gb0h5uktYMArpgPZhYOS\n nbHwgkacMZiZUJSSEaQGHQlO94PbsEpmvAq00ydM2NvAsYnhg4j5RT22Bj/U3iGC2VO5\n ypp0MnfuhQ/6dWJsCOBRpD0BvZ4bBV4770srxyl/E2WJjFUiAU0QV4Xf/Zubx25fZPxm\n Vhdp8yaSKPEwg0jR2BHy/yOzPGhJZOWnSMo3B+J7xQmjIjryWFiSbpkUwZ9wpW0sqCGA\n yWcn2xKcNwSBQ3Hmy5Z1Zw0rAljYN+BU5C5ieIzHHPq2PwIv1eD2ACyGd84baobAapNY\n XTvQ==","X-Forwarded-Encrypted":"i=1;\n AFNElJ8h7teeUGsaz5dMoG7pfF5Og5k0x75OPLcUHMggsX+4/p027Z+H8tpxjquR0f+1dmULYOqZF2gLyabs@nongnu.org","X-Gm-Message-State":"AOJu0YwA79Kgt7gmdMOo8zuHy3x55L5rlrcqrYsl8qlmGaqaBoH8Otaa\n 71vWdLvD8jv4tFESLZcH99rgoNaCtmLhvC5hC4r6w4659yVouYsda4HOrGo3c/aOJaTHmjvqcdO\n cQ4XtZsF/HY0ejdtPjvt7nE97/RKnIhMvGGvmwKoNg357IPBeqxmgQif9","X-Gm-Gg":"AeBDietdy69tKlDaJ4A2457HSb7/4YgNkOOdVlb+68EymkoZQv5ey2FawLiF9Z/s1Ht\n EgP6/1nyMmqPQRXNoR6l/AR6aZXMSc8O2luHyHzliEc4phojUYoXWX4m2FXlhkoi43fiwXU1xFv\n HCq3i1RJ+9/MagPwX+4ulN+0QSRgauAN3Brz41MWmmSEQt8p/Nofv+68r2mKpBY7lzv8MPNtnmU\n EmNM9ivE6ScDX9MWiJmN/ptEdmJuF4eJnT2C2ZOQFj6VuntqK31h5++5sYfT/SE899A+30eyt6Z\n Cs9c2Na0KAh7uer1yeSZ4Gmjc8/7m8YdzWPVRIvdPkhiRllLyPGDl5+A8PxBM9f9RgThfcjV75F\n HKQa9cmT3r+biyAsIt96s3FfjUslHRQ==","X-Received":["by 2002:a05:600c:26d5:b0:489:1c1f:35df with SMTP id\n 5b1f17b1804b1-4891c1f3715mr227971825e9.10.1777099311898;\n Fri, 24 Apr 2026 23:41:51 -0700 (PDT)","by 2002:a05:600c:26d5:b0:489:1c1f:35df with SMTP id\n 5b1f17b1804b1-4891c1f3715mr227971605e9.10.1777099311442;\n Fri, 24 Apr 2026 23:41:51 -0700 (PDT)"],"Message-ID":"<b39b576f-e0d6-43e2-aa72-18ca53d0cb1d@redhat.com>","Date":"Sat, 25 Apr 2026 08:41:49 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH] hw/core/register: add register_array_get_owner","To":"Luc Michel <luc.michel@amd.com>, qemu-devel@nongnu.org","Cc":"Peter Maydell <peter.maydell@linaro.org>,\n Francisco Iglesias <francisco.iglesias@amd.com>,\n Frederic Konrad <frederic.konrad@amd.com>,\n \"Edgar E . Iglesias\" <edgar.iglesias@amd.com>, =?utf-8?q?Philippe_Mathieu-D?=\n\t=?utf-8?q?aud=C3=A9?= <philmd@linaro.org>,\n Alistair Francis <alistair@alistair23.me>, qemu-arm@nongnu.org","References":"<20260424155646.533334-1-luc.michel@amd.com>","Content-Language":"en-US","From":"Thomas Huth <thuth@redhat.com>","Autocrypt":"addr=thuth@redhat.com; keydata=\n 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","In-Reply-To":"<20260424155646.533334-1-luc.michel@amd.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"7bit","Received-SPF":"pass client-ip=170.10.129.124; envelope-from=thuth@redhat.com;\n helo=us-smtp-delivery-124.mimecast.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, DKIMWL_WL_HIGH=-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, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001,\n SPF_HELO_PASS=-0.001,\n 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 <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"}}]