{"id":2221528,"url":"http://patchwork.ozlabs.org/api/1.2/patches/2221528/?format=json","web_url":"http://patchwork.ozlabs.org/project/uboot/patch/20260409-cmddb-v1-1-b10549b34133@oss.qualcomm.com/","project":{"id":18,"url":"http://patchwork.ozlabs.org/api/1.2/projects/18/?format=json","name":"U-Boot","link_name":"uboot","list_id":"u-boot.lists.denx.de","list_email":"u-boot@lists.denx.de","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260409-cmddb-v1-1-b10549b34133@oss.qualcomm.com>","list_archive_url":null,"date":"2026-04-09T15:45:23","name":"soc: qcom: cmd-db: Add optional support for device programmer flows","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"fa0ef71b781f2dab290a82f9243307a269511278","submitter":{"id":90810,"url":"http://patchwork.ozlabs.org/api/1.2/people/90810/?format=json","name":"Balaji Selvanathan","email":"balaji.selvanathan@oss.qualcomm.com"},"delegate":{"id":151538,"url":"http://patchwork.ozlabs.org/api/1.2/users/151538/?format=json","username":"kcxt","first_name":"Casey","last_name":"Connolly","email":"casey.connolly@linaro.org"},"mbox":"http://patchwork.ozlabs.org/project/uboot/patch/20260409-cmddb-v1-1-b10549b34133@oss.qualcomm.com/mbox/","series":[{"id":499322,"url":"http://patchwork.ozlabs.org/api/1.2/series/499322/?format=json","web_url":"http://patchwork.ozlabs.org/project/uboot/list/?series=499322","date":"2026-04-09T15:45:23","name":"soc: qcom: cmd-db: Add optional support for device programmer flows","version":1,"mbox":"http://patchwork.ozlabs.org/series/499322/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2221528/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2221528/checks/","tags":{},"related":[],"headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","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=aMoxVxWv;\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=TdWWotHQ;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de;\n envelope-from=u-boot-bounces@lists.denx.de; receiver=patchwork.ozlabs.org)","phobos.denx.de;\n dmarc=none (p=none dis=none) header.from=oss.qualcomm.com","phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de","phobos.denx.de;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=qualcomm.com header.i=@qualcomm.com\n header.b=\"aMoxVxWv\";\n\tdkim=pass (2048-bit key;\n unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.b=\"TdWWotHQ\";\n\tdkim-atps=neutral","phobos.denx.de; dmarc=none (p=none dis=none)\n header.from=oss.qualcomm.com","phobos.denx.de; spf=pass\n smtp.mailfrom=balaji.selvanathan@oss.qualcomm.com"],"Received":["from phobos.denx.de (phobos.denx.de\n [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fs45c164Lz1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 10 Apr 2026 01:45:40 +1000 (AEST)","from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id 2F17283DC9;\n\tThu,  9 Apr 2026 17:45:37 +0200 (CEST)","by phobos.denx.de (Postfix, from userid 109)\n id 89C738412A; Thu,  9 Apr 2026 17:45:36 +0200 (CEST)","from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com\n [205.220.168.131])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id 4949684167\n for <u-boot@lists.denx.de>; Thu,  9 Apr 2026 17:45:32 +0200 (CEST)","from pps.filterd (m0279867.ppops.net [127.0.0.1])\n by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 639Cxm0a1729916\n for <u-boot@lists.denx.de>; Thu, 9 Apr 2026 15:45:30 GMT","from mail-pf1-f198.google.com (mail-pf1-f198.google.com\n [209.85.210.198])\n by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4deckxgmp3-1\n (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT)\n for <u-boot@lists.denx.de>; Thu, 09 Apr 2026 15:45:30 +0000 (GMT)","by mail-pf1-f198.google.com with SMTP id\n d2e1a72fcca58-82c4664f75fso961408b3a.3\n for <u-boot@lists.denx.de>; Thu, 09 Apr 2026 08:45:30 -0700 (PDT)","from hu-bselvana-blr.qualcomm.com\n (blr-bdr-fw-01_GlobalNAT_AllZones-Outside.qualcomm.com. [103.229.18.19])\n by smtp.gmail.com with ESMTPSA id\n d2e1a72fcca58-82cf9b2443dsm30653777b3a.4.2026.04.09.08.45.25\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Thu, 09 Apr 2026 08:45:27 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED,\n RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED,\n SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2","DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h=\n cc:content-transfer-encoding:content-type:date:from:message-id\n :mime-version:subject:to; s=qcppdkim1; bh=eWSzslYQaDWI+xDwoh+RQc\n d3SWZCwgps27yjqClyHio=; b=aMoxVxWvWZIM0a4lLjsOvddCNPJmAfyDa7jJz+\n ja49KL77QuxBE9ZmojQHVpBULD8v4sz4fWH2YThP9aC1XdhlZ+7Q5PuudErm+J0n\n JupVPDbMNXAfGFmQOylo3tJBRJ4h0YBerasGe95Kie/rMWs+AMTI+BWpzUjIUQc0\n S7ms6ahi/HDfOtZUu5JattPinTsnw+LIwNa8V/pv+EV2ghyG+QFLNfirNXslfoGp\n Aq97uFQAN+YOI10cJff3XVKL/OIIyfB2lcYQcARQIWcpC+Oq3t+BtZMyr8BPmnpB\n K5i7xif5+VJEQMq5seAyaF8rMAe7wTp8USbc5VHEG4Dj6reQ==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=oss.qualcomm.com; s=google; t=1775749529; x=1776354329; darn=lists.denx.de;\n h=cc:to:message-id:content-transfer-encoding:mime-version:subject\n :date:from:from:to:cc:subject:date:message-id:reply-to;\n bh=eWSzslYQaDWI+xDwoh+RQcd3SWZCwgps27yjqClyHio=;\n b=TdWWotHQ7ZhHrAn0/nPH9y/OIM5pF9A2zWAE5odx8+xr+TFrTqdVQDQ54GPClbQYuY\n 73q/GZMx9pv2g60bfrNjOIPUZtELoCKD59o6xvxAdUHPDGojJzuv96nB7l7/JrBhLrX5\n TYVSTI4PwWA/EcG97IqB2MuHeADQmgyGTU1znG53ptvT4H1O4MUqOrOe/DNUe+fcIeq2\n CI0RAwSeVUqxgaiagBRuSPOEiNN5q8LbPEat/qynd1l/cvKuswBZteq8zbsez9hFGjL1\n ZTyuwPXxmmujkUQtMJN0SrGaf12h/o6t6HfbayPIRl3oVW78GfxxIz6+AvZgPrVw+O+X\n XzcQ=="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1775749529; x=1776354329;\n h=cc:to:message-id:content-transfer-encoding:mime-version:subject\n :date:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=eWSzslYQaDWI+xDwoh+RQcd3SWZCwgps27yjqClyHio=;\n b=inJkjdYGK8goNFASO6jH1wGCFMHwlNRS+IhHwTEAdlnipxVmcObYJMZxCXmgAczIDW\n Pso/kFEytAI/VYU3KxwhTqKaEIjMUsmra3t56vvcsi1/poJJHlQg8el3+HjvZyejeme3\n SFUpC2egojHuwxSF9+sMZHjraLoNX7588N9SkkeIr6w6fVOLxKQ+1SecmBm4xmC+JAHu\n 0se+YWkZrPkeuyCnAjJg4ESVsAD5MKnys0CauUXbuU6YbKFLPKegqg3FukEt0nUHZUQF\n rc4Myih6pTAj7aD7W/k6qMqM9WBtgtn0DNRW89KZKK1Q5frtBLAnM8bYdVy9AIjjwEON\n 07Iw==","X-Forwarded-Encrypted":"i=1;\n AJvYcCX48/jqusvjOSG2F/yAjpmJQ/CbNW0lGjje5NMLv5na4Aw4MXm49+nL4bZ9XlZzVZfdjMqpnjE=@lists.denx.de","X-Gm-Message-State":"AOJu0YxupsBTCGQghpwqWCVUl1M/B1AX+ikAk1RG5hFb98LuBqBnv3cB\n Z+rcNnWT/vr9YMcusiKA8f3AL6/UcaoJ+KLa/TlOrM+8W9nZ9demcXrPiAiekuRtgmuCP+aKk32\n Ejhlmv8Eok4DDX+fs6A/SQjujIgDteUbNT2Dz26ZdQcDMlLejcLnQG7t4rY/z0u5o","X-Gm-Gg":"AeBDietDLg+OXsKtrfKB4T5N3pjT6wnujp4l3tIa291LET8e7HEJMyVP4JrTkveRVIv\n W1oD1uu/h5feS4B2IkAWBEw4/8FuGyrCegBIAuOBHpCw0SDxyenjFlZROraQYcaoim2tSwNK1n/\n XOepl8yK8aT45bdmyfELcrrqEz3IVxVXo90h/PoqXyc4orFc9uXOVFX85PP3OaBHYpVi1rQCp2y\n WgUJGlBLwYkSFYRAPFHuHnmZJLWyC9o8uSPCzq5SZWybi8v4ViGavmf+wvWpGxGrVUQPY7U2NC1\n 64piPF5ZcLyF+8cyakTQBlixKdJBNPjcfU0uXGUQYRfT1fZHhHhvjkx6yzvSkACfXyGYL1+dkzv\n NIWUkKv1rsg18m0bacuOqSX2Ai+Vepn+UwFxBS3xZuj5GQyCC8wJlPILCCYX53KkjGt57chim+r\n UOclTAEvlGC4yukOY5YoZpVsENPJkQ7HoVszF7e0w+MARSWzPCrw==","X-Received":["by 2002:a05:6a00:14cc:b0:82c:e4b4:b056 with SMTP id\n d2e1a72fcca58-82d0db9115cmr25672540b3a.43.1775749528893;\n Thu, 09 Apr 2026 08:45:28 -0700 (PDT)","by 2002:a05:6a00:14cc:b0:82c:e4b4:b056 with SMTP id\n d2e1a72fcca58-82d0db9115cmr25672483b3a.43.1775749528223;\n Thu, 09 Apr 2026 08:45:28 -0700 (PDT)"],"From":"Balaji Selvanathan <balaji.selvanathan@oss.qualcomm.com>","Date":"Thu, 09 Apr 2026 21:15:23 +0530","Subject":"[PATCH] soc: qcom: cmd-db: Add optional support for device\n programmer flows","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-Id":"<20260409-cmddb-v1-1-b10549b34133@oss.qualcomm.com>","X-B4-Tracking":"v=1; b=H4sIAJLJ12kC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyDHUUlJIzE\n vPSU3UzU4B8JSMDIzMDEwNL3eTclJQkXWNLk8S0RAMDYwtDCyWg2oKi1LTMCrA50bG1tQDXfOt\n GVwAAAA==","X-Change-ID":"20260409-cmddb-394afa003818","To":"Sumit Garg <sumit.garg@kernel.org>, u-boot-qcom@groups.io,\n u-boot@lists.denx.de","Cc":"Casey Connolly <casey.connolly@linaro.org>,\n Neil Armstrong <neil.armstrong@linaro.org>, Tom Rini <trini@konsulko.com>,\n Aswin Murugan <aswin.murugan@oss.qualcomm.com>,\n Balaji Selvanathan <balaji.selvanathan@oss.qualcomm.com>","X-Mailer":"b4 0.14.3","X-Developer-Signature":"v=1; a=ed25519-sha256; t=1775749525; l=2755;\n i=balaji.selvanathan@oss.qualcomm.com; s=20260213; h=from:subject:message-id;\n bh=i4id6wWSmVD7yXxJSQPHk4NenYihEIwXMm5c7P9jiBo=;\n b=e+sWMBha5m6Q43H2a1wPVc1DAAd2T2iK96dc7Mts8bSr0vxkRBjB0eNDXrZyceA1g3O1ZvShv\n uWAyLECMk7/DmrTlaoQnilBpv2IC/EZQfpTUywxsQLvh895pj9L5IqZ","X-Developer-Key":"i=balaji.selvanathan@oss.qualcomm.com; a=ed25519;\n pk=CDpYiUU3SH7KGEtsBvY2tBGPiWfMxqWJF0p2LftOfnc=","X-Proofpoint-ORIG-GUID":"PLDdia-cOC9dcrkXE2rH17WE_KgN6FQk","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwNDA5MDE0NCBTYWx0ZWRfXxAFL4h4UmzXk\n 6Y/2Elwu/N2b9Oi1NK47HzVD1OrLFVj9nzZ/G4io31j+r9apXZylWL3oHZk7C9sTlw46+w1Hd3V\n ZaYPdHC+TOfQd2+S+2RA3dTjqAGCdkwDc5RvZYvmNdDmGR/pXLxTSjOplto9w66XAnmimrLNAsv\n M0dXZbyTQrDf+gzw6hyl63CqvyqJYIeSvMM560vqhshKok/tdMtHrL5sA/PdSdJwUfMf9dUoeFc\n 8al/4Zt3Bvioq940i45uctGY1t67SHO3osseZm+ww0c31MLAwPT/F09tY9+XlW5N3uyMZakf587\n jdDTzm4Qn6iJxNQVaQ9g2CvjkV3iBqo+A4XzCWmLUuvec/AZQiIRlvAl8dN5uEUaYrcki2EydLb\n aZ2xsXI39dD13w8FsQQ4oLT3Sm6DWchOc80jIwZyGagFmfzm9poh6EAiNuRNmwulP1RZ9oH/Sh5\n CB0bwulJdjdhOjYtmuQ==","X-Authority-Analysis":"v=2.4 cv=OMcXGyaB c=1 sm=1 tr=0 ts=69d7c99a cx=c_pps\n a=m5Vt/hrsBiPMCU0y4gIsQw==:117 a=Ou0eQOY4+eZoSc0qltEV5Q==:17\n a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10\n a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=eoimf2acIAo5FJnRuUoq:22\n a=EUspDBNiAAAA:8 a=T12rikTJy4dLEMnsOkQA:9 a=QEXdDO2ut3YA:10\n a=IoOABgeZipijB_acs4fv:22","X-Proofpoint-GUID":"PLDdia-cOC9dcrkXE2rH17WE_KgN6FQk","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-09_04,2026-04-09_02,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n bulkscore=0 phishscore=0 clxscore=1015 impostorscore=0 spamscore=0\n priorityscore=1501 lowpriorityscore=0 suspectscore=0 malwarescore=0\n adultscore=0 classifier=typeunknown authscore=0 authtc= authcc=\n route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000\n definitions=main-2604090144","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.39","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<https://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=subscribe>","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>","X-Virus-Scanned":"clamav-milter 0.103.8 at phobos.denx.de","X-Virus-Status":"Clean"},"content":"Add QCOM_COMMAND_DB_OPTIONAL Kconfig option to allow the Command DB\ndriver to bind successfully even when CMD DB data is missing or has\nan invalid magic number.\n\nThis is required for device programmer flows where U-Boot runs\nwithout AOP (Always On Processor) being invoked. Since AOP is\nresponsible for populating CMD DB data, device programmer scenarios\nlack valid CMD DB and would otherwise fail to boot.\n\nNormal boot flows should keep this disabled\nas they require valid CMD DB data populated by AOP.\n\nSigned-off-by: Balaji Selvanathan <balaji.selvanathan@oss.qualcomm.com>\n---\n drivers/soc/qcom/Kconfig  | 16 ++++++++++++++++\n drivers/soc/qcom/cmd-db.c | 10 ++++++++++\n 2 files changed, 26 insertions(+)\n\n\n---\nbase-commit: f0000b4a57e9edf8ff8454b9056d767466dff57f\nchange-id: 20260409-cmddb-394afa003818\n\nBest regards,","diff":"diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig\nindex 8243805e46a..239d87e044f 100644\n--- a/drivers/soc/qcom/Kconfig\n+++ b/drivers/soc/qcom/Kconfig\n@@ -18,6 +18,22 @@ config QCOM_COMMAND_DB\n \t  resource on a RPM-hardened platform must use this database to get\n \t  SoC specific identifier and information for the shared resources.\n \n+config QCOM_COMMAND_DB_OPTIONAL\n+\tbool \"Allow operation without Command DB data\"\n+\tdepends on QCOM_COMMAND_DB\n+\thelp\n+\t  Allow the Command DB driver to bind successfully even when CMD DB\n+\t  data is not populated or has an invalid magic number.\n+\n+\t  This is useful for platforms where CMD DB is not populated by\n+\n+\t  When enabled, missing CMD DB will generate warnings but allow boot\n+\t  to continue. Consumer drivers must handle cmd_db API failures\n+\t  gracefully by checking return values.\n+\n+\t  If unsure, say N. Most production Qualcomm platforms require\n+\t  valid CMD DB data.\n+\n config QCOM_RPMH\n \tbool \"Qualcomm RPMh support\"\n \tdepends on QCOM_COMMAND_DB\ndiff --git a/drivers/soc/qcom/cmd-db.c b/drivers/soc/qcom/cmd-db.c\nindex d0a6047b8a6..b4682d811f7 100644\n--- a/drivers/soc/qcom/cmd-db.c\n+++ b/drivers/soc/qcom/cmd-db.c\n@@ -252,8 +252,18 @@ static int cmd_db_bind(struct udevice *dev)\n \n \tcmd_db_header = base;\n \tif (!cmd_db_magic_matches(cmd_db_header)) {\n+#ifdef CONFIG_QCOM_COMMAND_DB_OPTIONAL\n+\t\tlog_warning(\"%s: CMD DB magic not found (0x%02x%02x%02x%02x)\\n\",\n+\t\t\t    __func__, cmd_db_header->magic[0], cmd_db_header->magic[1],\n+\t\t\t    cmd_db_header->magic[2], cmd_db_header->magic[3]);\n+\t\tlog_warning(\"%s: CMD DB data unavailable, resource queries will fail\\n\",\n+\t\t\t    __func__);\n+\t\tcmd_db_header = NULL;\n+\t\treturn 0;\n+#else\n \t\tlog_err(\"%s: Invalid Command DB Magic\\n\", __func__);\n \t\treturn -EINVAL;\n+#endif\n \t}\n \n \treturn 0;\n","prefixes":[]}