{"id":2224114,"url":"http://patchwork.ozlabs.org/api/covers/2224114/?format=json","web_url":"http://patchwork.ozlabs.org/project/qemu-devel/cover/20260416210305.2255579-1-brian.cain@oss.qualcomm.com/","project":{"id":14,"url":"http://patchwork.ozlabs.org/api/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":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260416210305.2255579-1-brian.cain@oss.qualcomm.com>","list_archive_url":null,"date":"2026-04-16T21:02:56","name":"[v5,0/9] Hexagon system emulation - Part 3/3","submitter":{"id":89839,"url":"http://patchwork.ozlabs.org/api/people/89839/?format=json","name":"Brian Cain","email":"brian.cain@oss.qualcomm.com"},"mbox":"http://patchwork.ozlabs.org/project/qemu-devel/cover/20260416210305.2255579-1-brian.cain@oss.qualcomm.com/mbox/","series":[{"id":500204,"url":"http://patchwork.ozlabs.org/api/series/500204/?format=json","web_url":"http://patchwork.ozlabs.org/project/qemu-devel/list/?series=500204","date":"2026-04-16T21:03:01","name":"Hexagon system emulation - Part 3/3","version":5,"mbox":"http://patchwork.ozlabs.org/series/500204/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/covers/2224114/comments/","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=qualcomm.com header.i=@qualcomm.com header.a=rsa-sha256\n header.s=qcppdkim1 header.b=k+Vnx5m5;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.a=rsa-sha256 header.s=google header.b=ISQm46Ls;\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 4fxVrb4R0vz1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 17 Apr 2026 07:04:47 +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 1wDTs8-00005d-5S; Thu, 16 Apr 2026 17:03:36 -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 <brian.cain@oss.qualcomm.com>)\n id 1wDTrz-0008UT-7P\n for qemu-devel@nongnu.org; Thu, 16 Apr 2026 17:03:28 -0400","from mx0a-0031df01.pphosted.com ([205.220.168.131])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <brian.cain@oss.qualcomm.com>)\n id 1wDTrw-0000z8-Pd\n for qemu-devel@nongnu.org; Thu, 16 Apr 2026 17:03:26 -0400","from pps.filterd (m0279862.ppops.net [127.0.0.1])\n by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 63GIRTeN1183798\n for <qemu-devel@nongnu.org>; Thu, 16 Apr 2026 21:03:20 GMT","from mail-dl1-f71.google.com (mail-dl1-f71.google.com\n [74.125.82.71])\n by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4dk52jgfe0-1\n (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT)\n for <qemu-devel@nongnu.org>; Thu, 16 Apr 2026 21:03:20 +0000 (GMT)","by mail-dl1-f71.google.com with SMTP id\n a92af1059eb24-12c726ddda8so500601c88.1\n for <qemu-devel@nongnu.org>; Thu, 16 Apr 2026 14:03:20 -0700 (PDT)","from hu-bcain-lv.qualcomm.com (Global_NAT1.qualcomm.com.\n [129.46.96.20]) by smtp.gmail.com with ESMTPSA id\n 5a478bee46e88-2de8c90cd7esm11176277eec.13.2026.04.16.14.03.18\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Thu, 16 Apr 2026 14:03:18 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h=\n cc:content-transfer-encoding:content-type:content-type:date:from\n :message-id:mime-version:subject:to; s=qcppdkim1; bh=ztuxBCV1XdY\n VDtddruuiDSkLWnaw62K91JzsPi9H0yc=; b=k+Vnx5m5mNBQ8jYTAhrQK3BdcgI\n 7Cjfz6pKacwCV5p0wa9rkgD+QQ2sunPlmRdSK9spkmpphpX/onTPPzYHk9sCeMfO\n Y/6vQKlkWf4Zk7J2a0woDdymSfP6snx8vvr77HYKX3Hejdln/GojFu+waMxBWzmI\n rOHt3S5uRwY6mic52zjNuNneEkYLruB+kLEly+YedXNimrWDONmC7KVPeKmCu7oJ\n YL9fxfBPYLaVWtjOldp424kjT/TNZGfqg/0xaLkSfDMTeJ2RSIf7g9cdcu7iLhYY\n 95MGRGmVdL3OGx0PQU1cPjIieT8KUyw/U/fwcVex0xTZmPhYQFRzTUlfppQ==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=oss.qualcomm.com; s=google; t=1776373400; x=1776978200; darn=nongnu.org;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:from:to:cc:subject:date:message-id:reply-to;\n bh=ztuxBCV1XdYVDtddruuiDSkLWnaw62K91JzsPi9H0yc=;\n b=ISQm46LsWX87y4RbDCjoQf4BG5QbafLQknDe+44U1JbNAgWKGAWV9imfKCiO4DeWjj\n XbbPq5Q34cMyJl8du3fWzVfphzSwYMPrZ7lNHjp+rLQghFJaGnvgCZIk/oJSrRoFBKv1\n fRbsXkPm/XwELuZvoYz5/igMHaQ3fSYpnHQPGHf5eg0Tj0cImCXjVg8xdFjdz8eIdGxv\n ws/SEEPx08nYSjLIJ+i5OmK6t++QP/tIAdmQ1Xaqc29hXR/5hN4iyeExFnsNv6fdeYFH\n cJBmpV3fJ2iukbLCCWLHzWi34Htc1yHxesc1yl76nqXEtI4AU6VEkqqgW4DMyBcYGQ2Q\n x7WA=="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776373400; x=1776978200;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=ztuxBCV1XdYVDtddruuiDSkLWnaw62K91JzsPi9H0yc=;\n b=JPcAUiGiYjWwoDGGYxUvKplNhIAHeUNeclXJOfTMxTxg39HvAeS6FLXMheNKWAeyeH\n bUPllL0JTv+s8kkzw+EKNbC7yrqS+GlUdpg9KJVTNOe9iMIARLvMd62OavlxVtuiucVd\n r8NkffB9SG1NfaXkCILpCQZ5IUDXDnzNMyhJ+02tkyN9j4XZ8uhdDgnEvMwyy2JcDLwj\n DEtraHBg2lMzMartEwN7tUp86XPJzVnxWuBuMhC31W3Gxa+U0rAxLyIusqehbQ3eXiMs\n bbgbnbSVyESEQex2ncIy/hxfiOv8u+ckLAwU0jiVIZJ+C6iUR56mQUX2+e6VYd0am+iM\n Uc0w==","X-Gm-Message-State":"AOJu0YypyJBFJ+AAlInEVdfedj5NdaSl+CB2iHEF98Dcung4Teu5pr0x\n L9VhYrKeeDNZmJqyAleuCGVyi18tkQjGClB2GTcONJ9E7Vc9z5aHKKDfnqxKJ22UT8lqS3FQP2H\n 0Xi2V2Zng8EaW28A3xn0zdtDSfXS0uZX65ky1JYbiXJN62Jvf3O/EHDjYiYKVjyDmVw==","X-Gm-Gg":"AeBDieukfZpjw93qRUrw/gthc+MGKj2vKRI7/1P2GwUWfS9JW60R6olpjFoUmeDTkKJ\n Y7ANPNQyiuPUSS6Si0vZlhBH8jky68NrbxJuLETMjvmLGEQRSuScUpDEujeWCIvmHVK97ODP3SM\n 4KE8Q2i9awhMQ0uSTffR1JiCUVsz+w8sUDcSJFIgkgggZ4gWzKpm1zONItR7+h0UX2Wa8voG2kG\n xDQKPXenSJZ7eHQMbwN7ZL7MY9j5lMH49vohOkWwEZ8GkViunD0L9UglASZXwNIflt2uq3PoCEX\n 6igjhMSIw0U0/OVQF1zSjiKjCJ+SPPeXpVy7lg58AwBp+uP00gr2JEFNJ+bJqNDvOnsZAhbEFlt\n U4yF4APiE5gflAAGmnHmVHHABUH5h4NoPOSibivwC6t9z33ss81uEgJkZcXK3ewi+oUBppVSIyc\n UmqXBz","X-Received":["by 2002:a05:7022:ef11:b0:12a:72af:83d2 with SMTP id\n a92af1059eb24-12c7283bf8emr427650c88.14.1776373399651;\n Thu, 16 Apr 2026 14:03:19 -0700 (PDT)","by 2002:a05:7022:ef11:b0:12a:72af:83d2 with SMTP id\n a92af1059eb24-12c7283bf8emr427618c88.14.1776373398788;\n Thu, 16 Apr 2026 14:03:18 -0700 (PDT)"],"From":"Brian Cain <brian.cain@oss.qualcomm.com>","To":"qemu-devel@nongnu.org","Cc":"brian.cain@oss.qualcomm.com, philmd@linaro.org, ltaylorsimpson@gmail.com,\n matheus.bernardino@oss.qualcomm.com, marco.liebel@oss.qualcomm.com,\n quic_mburton@quicinc.com, sid.manning@oss.qualcomm.com, ale@rev.ng,\n anjo@rev.ng, pierrick.bouvier@oss.qualcomm.com","Subject":"[PATCH v5 0/9] Hexagon system emulation - Part 3/3","Date":"Thu, 16 Apr 2026 14:02:56 -0700","Message-Id":"<20260416210305.2255579-1-brian.cain@oss.qualcomm.com>","X-Mailer":"git-send-email 2.34.1","MIME-Version":"1.0","Content-Type":["text/plain; charset=UTF-8","text/plain; charset=\"utf-8\""],"Content-Transfer-Encoding":"base64","X-Authority-Analysis":"v=2.4 cv=buR8wkai c=1 sm=1 tr=0 ts=69e14e98 cx=c_pps\n a=JYo30EpNSr/tUYqK9jHPoA==:117 a=ouPCqIW2jiPt+lZRy3xVPw==:17\n a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10\n a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_K5XuSEh1TEqbUxoQ0s3:22\n a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=N3XQ6_GsU5t2OgCActgA:9 a=QEXdDO2ut3YA:10\n a=Fk4IpSoW4aLDllm1B1p-:22","X-Proofpoint-GUID":"qc47Q9fOYTGAXZe3msVn-QmOHOLSPbhJ","X-Proofpoint-ORIG-GUID":"qc47Q9fOYTGAXZe3msVn-QmOHOLSPbhJ","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwNDE2MDE5OSBTYWx0ZWRfXwnapBe+9fLup\n Sjbie0rvmT3xg7pj3FTThzB3aU15E9CaJ2auza1HNwSWqRQhzcg+aG88lHqQqZzLnAgmXuTpIWh\n +O/h0qTbi2m0I8t5NMsAO5HYoGCBtzekzMZcF/wCzQ7MZ7N72LF9IBLN3qcJzcqrqsdQHbI5BUx\n 0WGO7cQ1gP3WWV2hw/LESfzqtIfkEm37L9KrenNWjnMymvYVaW9EhYtQeDpPQjpyL6GCKPndmO9\n U1CiW4B/rTu2NWAlMGs9wZd+4QNes5lCXBXrZpTMk/0b//3ysBhsQj0PcjWKxuYDWDRCVL/9PA7\n m5NN6epNIZUn0AItQuC3BURU+by/m/qlCHurdwIdXHrBsJQL3rXsa0/qS6Oom9sfVIrWUrksJNb\n 099l78a2FXyWBHC3Qnk8r4EC/Ey+iRJh+7P4di1hTS+5L0k137RoASk6ZXUtcKFhpHmUhS7poND\n CTfvP8gjQHNgxFZBHKA==","X-Proofpoint-Virus-Version":"vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-04-16_03,2026-04-16_03,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n impostorscore=0 adultscore=0 lowpriorityscore=0 suspectscore=0 bulkscore=0\n priorityscore=1501 spamscore=0 malwarescore=0 phishscore=0 clxscore=1015\n classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0\n reason=mlx scancount=1 engine=8.22.0-2604070000 definitions=main-2604160199","Received-SPF":"pass client-ip=205.220.168.131;\n envelope-from=brian.cain@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com","X-Spam_score_int":"-27","X-Spam_score":"-2.8","X-Spam_bar":"--","X-Spam_report":"(-2.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 RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001,\n RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, 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":"This is Part 3 of the Hexagon system emulation series.  It adds the\nboard-level support, machine definitions, and build infrastructure\nneeded to run hexagon-softmmu.\n\nThis includes:\n - Global register model (QOM device for shared system registers)\n - Global register tracing\n - Machine configuration definitions (v66g, v68n, sa8775-cdsp0)\n - cfgbase support\n - Hexagon \"virt\" machine definition\n - Build configuration for hexagon-softmmu target\n - Boot serial test for hexagon\n\nBased on Part 1 v6 + Part 2 v4.\n\nChanges since v4:\n - Removed empty hexagon_globalreg_realize() stub and its\n   dc->realize assignment\n - Changed virt machine default CPU from v73 to v68 to match\n   the machine config\n - Removed unnecessary \"depends on TCG\" from HEX_DSP Kconfig\n - Removed unused \"imply PTIMER\" from HEX_DSP Kconfig\n - Removed stale #include \"exec/target_page.h\" from translate.c\n\nPrevious versions:\n - v4: https://lore.kernel.org/qemu-devel/20260408042149.1902796-1-brian.cain@oss.qualcomm.com/\n - v3: https://lore.kernel.org/qemu-devel/20260311042019.1085030-1-brian.cain@oss.qualcomm.com/\n - v2: https://lore.kernel.org/qemu-devel/20250902034951.1948194-1-brian.cain@oss.qualcomm.com/\n - v1: https://lore.kernel.org/qemu-devel/20250301172045.1295412-1-brian.cain@oss.qualcomm.com/\n\nRelated series:\n - Part 1 v6: https://lore.kernel.org/qemu-devel/20260401152657.314902-1-brian.cain@oss.qualcomm.com/\n - Part 2 v4: https://lore.kernel.org/qemu-devel/20260408041953.1899532-1-brian.cain@oss.qualcomm.com/\n\nBrian Cain (8):\n  hw/hexagon: Add globalreg model\n  hw/hexagon: Add global register tracing\n  hw/hexagon: Add machine configs for sysemu\n  hw/hexagon: Add v68, sa8775-cdsp0 defs\n  hw/hexagon: Modify \"Standalone\" symbols\n  target/hexagon: add build config for softmmu\n  hw/hexagon: Define hexagon \"virt\" machine\n  tests/qtest: Add hexagon boot-serial-test\n\nSid Manning (1):\n  hw/hexagon: Add support for cfgbase\n\n MAINTAINERS                                 |   3 +\n configs/devices/hexagon-softmmu/default.mak |   8 +\n configs/targets/hexagon-softmmu.mak         |   8 +\n meson.build                                 |   1 +\n hw/hexagon/trace.h                          |   2 +\n include/hw/hexagon/hexagon.h                | 150 +++++++\n include/hw/hexagon/hexagon_globalreg.h      |  56 +++\n include/hw/hexagon/virt.h                   |  43 ++\n target/hexagon/cpu.h                        |   7 +-\n hw/hexagon/machine_cfg_sa8775_cdsp0.h.inc   |  64 +++\n hw/hexagon/machine_cfg_v66g_1024.h.inc      |  64 +++\n hw/hexagon/machine_cfg_v68n_1024.h.inc      |  65 +++\n hw/hexagon/hexagon_dsp.c                    | 188 ++++++++\n hw/hexagon/hexagon_globalreg.c              | 313 ++++++++++++++\n hw/hexagon/virt.c                           | 456 ++++++++++++++++++++\n system/qdev-monitor.c                       |   2 +-\n target/hexagon/cpu.c                        |   6 +-\n target/hexagon/translate.c                  |   1 +\n tests/qtest/boot-serial-test.c              |   8 +\n hw/Kconfig                                  |   1 +\n hw/hexagon/Kconfig                          |  14 +\n hw/hexagon/meson.build                      |   8 +\n hw/hexagon/trace-events                     |   3 +\n hw/meson.build                              |   1 +\n target/Kconfig                              |   1 +\n target/hexagon/Kconfig                      |   2 +\n target/hexagon/meson.build                  |  13 +-\n tests/qemu-iotests/testenv.py               |   1 +\n tests/qtest/meson.build                     |   2 +\n 29 files changed, 1480 insertions(+), 11 deletions(-)\n create mode 100644 configs/devices/hexagon-softmmu/default.mak\n create mode 100644 configs/targets/hexagon-softmmu.mak\n create mode 100644 hw/hexagon/trace.h\n create mode 100644 include/hw/hexagon/hexagon.h\n create mode 100644 include/hw/hexagon/hexagon_globalreg.h\n create mode 100644 include/hw/hexagon/virt.h\n create mode 100644 hw/hexagon/machine_cfg_sa8775_cdsp0.h.inc\n create mode 100644 hw/hexagon/machine_cfg_v66g_1024.h.inc\n create mode 100644 hw/hexagon/machine_cfg_v68n_1024.h.inc\n create mode 100644 hw/hexagon/hexagon_dsp.c\n create mode 100644 hw/hexagon/hexagon_globalreg.c\n create mode 100644 hw/hexagon/virt.c\n create mode 100644 hw/hexagon/Kconfig\n create mode 100644 hw/hexagon/meson.build\n create mode 100644 hw/hexagon/trace-events\n create mode 100644 target/hexagon/Kconfig"}