{"id":2228823,"url":"http://patchwork.ozlabs.org/api/1.1/patches/2228823/?format=json","web_url":"http://patchwork.ozlabs.org/project/qemu-devel/patch/20260427124738.966578-4-peter.maydell@linaro.org/","project":{"id":14,"url":"http://patchwork.ozlabs.org/api/1.1/projects/14/?format=json","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":"<20260427124738.966578-4-peter.maydell@linaro.org>","date":"2026-04-27T12:46:37","name":"[PULL,03/63] hw/misc/imx8mp_analog: Add property to analog device","commit_ref":null,"pull_url":null,"state":"not-applicable","archived":false,"hash":"28c33b5535ffab24fb5c69a527e27ec0bf378179","submitter":{"id":5111,"url":"http://patchwork.ozlabs.org/api/1.1/people/5111/?format=json","name":"Peter Maydell","email":"peter.maydell@linaro.org"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/qemu-devel/patch/20260427124738.966578-4-peter.maydell@linaro.org/mbox/","series":[{"id":501642,"url":"http://patchwork.ozlabs.org/api/1.1/series/501642/?format=json","web_url":"http://patchwork.ozlabs.org/project/qemu-devel/list/?series=501642","date":"2026-04-27T12:46:34","name":"[PULL,01/63] docs/system: add FEAT_AA32 and FEAT_AA64 to emulation list","version":1,"mbox":"http://patchwork.ozlabs.org/series/501642/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2228823/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2228823/checks/","tags":{},"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=E559pA4c;\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 4g43NR21Ptz1xvV\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 27 Apr 2026 22:51:35 +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 1wHLOQ-00005S-Gj; Mon, 27 Apr 2026 08:48:56 -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 <peter.maydell@linaro.org>)\n id 1wHLNL-0007lE-80\n for qemu-devel@nongnu.org; Mon, 27 Apr 2026 08:47:51 -0400","from mail-wm1-x331.google.com ([2a00:1450:4864:20::331])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <peter.maydell@linaro.org>)\n id 1wHLNI-0005Q2-7V\n for qemu-devel@nongnu.org; Mon, 27 Apr 2026 08:47:45 -0400","by mail-wm1-x331.google.com with SMTP id\n 5b1f17b1804b1-4838c15e3cbso94444795e9.3\n for <qemu-devel@nongnu.org>; Mon, 27 Apr 2026 05:47:43 -0700 (PDT)","from lanath.. (wildly.archaic.org.uk. [81.2.115.145])\n by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-488ffc5e3f4sm448974115e9.2.2026.04.27.05.47.41\n for <qemu-devel@nongnu.org>\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Mon, 27 Apr 2026 05:47:41 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1777294062; x=1777898862; darn=nongnu.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:to:from:from:to:cc:subject:date:message-id\n :reply-to; bh=inQc7p7BRhy2EMrunHSD0peg/ahwU+n5t+qLitof4+E=;\n b=E559pA4cIaUjMIDcq/hr+Braf6Kt+XRkFvaOAeGDI2UOWRQ/yr45zC5S2IdIgHWKhk\n 66TZicQLZJUW3cPn7/CXtZjROZc5J99mYJEY/A625cKQ3xN7oH2pSadchertUa5tZZQn\n z4xIxeXJbPbWkWGDT/fTo2ho0z0kMdS+epjZC7rqz9FgJq+m6Yy/vTn9aeQUCJnJvDDH\n 96VItj/NUZ5avJaASyY2D4TP4pepm0mJ4IiSW5vcny0DeDbmgw0LdDc1Hdr7RWwofYgM\n eofSDgh2IMp1PD/EDGPZaVPcWJKN7i5NSIdrpo0EVAsa+X2D7Gogh7r12Rr4PP3mS0ac\n xmnA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777294062; x=1777898862;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:to:from:x-gm-gg:x-gm-message-state:from:to\n :cc:subject:date:message-id:reply-to;\n bh=inQc7p7BRhy2EMrunHSD0peg/ahwU+n5t+qLitof4+E=;\n b=UdkbRMvcizDx5MpJ9yseGxVfY6i/y9dON1F/2tQoorB00lvelO+vT4j80M/r9MalKZ\n dJuDP1m1VuYeBUnoCHlGp3HUcZ4qtTrxvZWJn8nDMwzxdX9rB+E4VsdB4jrfSzqCREMK\n Fn39NB6h7SrU0JSWMKi93Hpg0ZkF/V2jZOT1kNl8hmEtSts7jIAQxR6gse9wnHDiQ6Vi\n RUwvzYyOwdOf9zN27szEMyKkI92whq5ROaYLf87Pd5vY7hD4BvhGFFQ4XXj6XTNNolXr\n OdeibVvz1iWPIePW1r1OCpt7Oqf+d6UolQVGkOv4EgCCtU2ZbZIQr2JhA0Vu6ym+NiB7\n WRTg==","X-Gm-Message-State":"AOJu0Yw5rIZ5hyipzEDkJRxYwo0GflzEJbS7OiY8bRCZ+C3Q4vt5//ao\n S9plCOiDXHAKkRQquGgTdGGXIUUbqC9shcul/z7O11SsobF6+DloV3f59dprbqxUxy+s6LoVBuF\n ZcEG0","X-Gm-Gg":"AeBDieuAxBccExZ7fplN9omSJ6/oJh0cB8K3qI+k/LNnesYoj9QyNkBdTTXXdnjmGAT\n Actq31z76VrH5hTVJG8De8p0Wzm/bZvIQkXyOfCH9HQrw456G2a3aswBTIogC9vhOk+ccxXmVwq\n BfE9XFuk5FlaHB0A34UT8LR9OmBbbYSFkksPOfk6PqZmvHg35AFcrpZndtbVaDawyTPiuZ0pwqs\n dJTJ+kY5dclCu0KsvLuORsylSvLnrRfN4yrUJWWqQhTzAESJ7u2aVkGf8n/lB0UCmFBKOBZgffM\n V6kQPPCJfSTx3JzJWbwSP+AZoV7TCbhM3E/EU+clMuS9Aask3mREtrAYbNvJuGWFZtIUM4zyQnO\n Pv0zUMJCSWHM6SSg6VWsIy0M9JGjwCmp/fdLShCSWUwiUFNumviqGlA6wwcRxTIaG4zahYC/d85\n 5nDNNi/B2SRTZljF9vM+5UJVtBZ+ZpNTiQ+oUjqXX1B5L6LGPMnkh4NqwajUPcXJISmFOemcriF\n L9HOUvZvmdUTIWG0+P3PM1k8/NQHa1Kb23qBNUUyg==","X-Received":"by 2002:a05:600c:498a:b0:489:ad:7b5b with SMTP id\n 5b1f17b1804b1-48900ad7b76mr305185965e9.24.1777294062055;\n Mon, 27 Apr 2026 05:47:42 -0700 (PDT)","From":"Peter Maydell <peter.maydell@linaro.org>","To":"qemu-devel@nongnu.org","Subject":"[PULL 03/63] hw/misc/imx8mp_analog: Add property to analog device","Date":"Mon, 27 Apr 2026 13:46:37 +0100","Message-ID":"<20260427124738.966578-4-peter.maydell@linaro.org>","X-Mailer":"git-send-email 2.43.0","In-Reply-To":"<20260427124738.966578-1-peter.maydell@linaro.org>","References":"<20260427124738.966578-1-peter.maydell@linaro.org>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Received-SPF":"pass client-ip=2a00:1450:4864:20::331;\n envelope-from=peter.maydell@linaro.org; helo=mail-wm1-x331.google.com","X-Spam_score_int":"-20","X-Spam_score":"-2.1","X-Spam_bar":"--","X-Spam_report":"(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\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=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"},"content":"From: Gaurav Sharma <gaurav.sharma_7@nxp.com>\n\nAdd configurable properties for register reset values that differ\nbetween i.MX 8M variants (Plus, Mini, etc.). This allows the same\ndevice implementation to be shared across multiple SoCs.\n\nProperties added:\n- arm-pll-fdiv-ctl0-reset: ARM PLL divider control reset value\n\nDefault value is set to match i.MX 8MP reset value (0x000FA031).\nThis can be overridden in the variant like iMX8MM with its own\nreset value.\n\nReviewed-by: Bernhard Beschow <shentey@gmail.com>\nSigned-off-by: Gaurav Sharma <gaurav.sharma_7@nxp.com>\nSigned-off-by: Peter Maydell <peter.maydell@linaro.org>\n---\n hw/misc/imx8mp_analog.c         | 12 +++++++++++-\n include/hw/misc/imx8mp_analog.h |  3 +++\n 2 files changed, 14 insertions(+), 1 deletion(-)","diff":"diff --git a/hw/misc/imx8mp_analog.c b/hw/misc/imx8mp_analog.c\nindex 23ffae84f8..592512071c 100644\n--- a/hw/misc/imx8mp_analog.c\n+++ b/hw/misc/imx8mp_analog.c\n@@ -12,6 +12,7 @@\n #include \"qemu/log.h\"\n \n #include \"hw/misc/imx8mp_analog.h\"\n+#include \"hw/core/qdev-properties.h\"\n #include \"migration/vmstate.h\"\n \n #define ANALOG_PLL_LOCK BIT(31)\n@@ -51,7 +52,10 @@ static void imx8mp_analog_reset(DeviceState *dev)\n     s->analog[ANALOG_VPU_PLL_LOCKD_CTRL] = 0x0010003f;\n     s->analog[ANALOG_VPU_PLL_MNIT_CTRL] = 0x00280081;\n     s->analog[ANALOG_ARM_PLL_GEN_CTRL] = 0x00000810;\n-    s->analog[ANALOG_ARM_PLL_FDIV_CTL0] = 0x000fa031;\n+\n+    /* Use property value instead of hardcoded */\n+    s->analog[ANALOG_ARM_PLL_FDIV_CTL0] = s->arm_pll_fdiv_ctl0_reset;\n+\n     s->analog[ANALOG_ARM_PLL_LOCKD_CTRL] = 0x0010003f;\n     s->analog[ANALOG_ARM_PLL_MNIT_CTRL] = 0x00280081;\n     s->analog[ANALOG_SYS_PLL1_GEN_CTRL] = 0x0aaaa810;\n@@ -138,11 +142,17 @@ static const VMStateDescription imx8mp_analog_vmstate = {\n     },\n };\n \n+static const Property imx8mp_analog_properties[] = {\n+    DEFINE_PROP_UINT32(\"arm-pll-fdiv-ctl0-reset\", IMX8MPAnalogState,\n+                       arm_pll_fdiv_ctl0_reset, 0x000fa031), /* imx8mp default */\n+};\n+\n static void imx8mp_analog_class_init(ObjectClass *klass, const void *data)\n {\n     DeviceClass *dc = DEVICE_CLASS(klass);\n \n     device_class_set_legacy_reset(dc, imx8mp_analog_reset);\n+    device_class_set_props(dc, imx8mp_analog_properties);\n     dc->vmsd  = &imx8mp_analog_vmstate;\n     dc->desc  = \"i.MX 8M Plus Analog Module\";\n }\ndiff --git a/include/hw/misc/imx8mp_analog.h b/include/hw/misc/imx8mp_analog.h\nindex 6996e53771..0765e607b9 100644\n--- a/include/hw/misc/imx8mp_analog.h\n+++ b/include/hw/misc/imx8mp_analog.h\n@@ -76,6 +76,9 @@ struct IMX8MPAnalogState {\n     } mmio;\n \n     uint32_t analog[ANALOG_MAX];\n+\n+    /* Property for variant-specific reset values */\n+    uint32_t arm_pll_fdiv_ctl0_reset;\n };\n \n #endif /* IMX8MP_ANALOG_H */\n","prefixes":["PULL","03/63"]}