{"id":2225684,"url":"http://patchwork.ozlabs.org/api/1.1/patches/2225684/?format=json","web_url":"http://patchwork.ozlabs.org/project/uboot/patch/20260421-imx8mq-dm-pmic-v1-7-0e2b490542b1@nxp.com/","project":{"id":18,"url":"http://patchwork.ozlabs.org/api/1.1/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},"msgid":"<20260421-imx8mq-dm-pmic-v1-7-0e2b490542b1@nxp.com>","date":"2026-04-21T13:41:19","name":"[07/15] imx8mq: Correct signed_hdmi firmware position","commit_ref":null,"pull_url":null,"state":"accepted","archived":false,"hash":"d0fef7fbc9e4e3707969576fc3a707229efd5f96","submitter":{"id":80723,"url":"http://patchwork.ozlabs.org/api/1.1/people/80723/?format=json","name":"Peng Fan","email":"peng.fan@oss.nxp.com"},"delegate":{"id":151988,"url":"http://patchwork.ozlabs.org/api/1.1/users/151988/?format=json","username":"festevam","first_name":"Fabio","last_name":"Estevam","email":"festevam@gmail.com"},"mbox":"http://patchwork.ozlabs.org/project/uboot/patch/20260421-imx8mq-dm-pmic-v1-7-0e2b490542b1@nxp.com/mbox/","series":[{"id":500790,"url":"http://patchwork.ozlabs.org/api/1.1/series/500790/?format=json","web_url":"http://patchwork.ozlabs.org/project/uboot/list/?series=500790","date":"2026-04-21T13:41:12","name":"i.MX8MQ: Convert to DM_PMIC for a few boards","version":1,"mbox":"http://patchwork.ozlabs.org/series/500790/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2225684/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2225684/checks/","tags":{},"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=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com\n header.a=rsa-sha256 header.s=selector1-NXP1-onmicrosoft-com\n header.b=NcZxQxHb;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=85.214.62.61; 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.nxp.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=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com\n header.b=\"NcZxQxHb\";\n\tdkim-atps=neutral","phobos.denx.de;\n dmarc=none (p=none dis=none) header.from=oss.nxp.com","phobos.denx.de;\n spf=pass smtp.mailfrom=peng.fan@oss.nxp.com","dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=oss.nxp.com;"],"Received":["from phobos.denx.de (phobos.denx.de [85.214.62.61])\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 4g0M5j5W8dz1yGs\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 21 Apr 2026 22:26:01 +1000 (AEST)","from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id 45EC184258;\n\tTue, 21 Apr 2026 14:25:47 +0200 (CEST)","by phobos.denx.de (Postfix, from userid 109)\n id 5C0B6801A9; Tue, 21 Apr 2026 14:25:45 +0200 (CEST)","from AM0PR83CU005.outbound.protection.outlook.com\n (mail-westeuropeazlp170100001.outbound.protection.outlook.com\n [IPv6:2a01:111:f403:c201::1])\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 3D6BD842E1\n for <u-boot@lists.denx.de>; Tue, 21 Apr 2026 14:25:43 +0200 (CEST)","from PAXPR04MB8459.eurprd04.prod.outlook.com (2603:10a6:102:1da::15)\n by PAXPR04MB9349.eurprd04.prod.outlook.com (2603:10a6:102:2b8::9)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9818.32; Tue, 21 Apr\n 2026 12:25:38 +0000","from PAXPR04MB8459.eurprd04.prod.outlook.com\n ([fe80::4972:7eaa:b9f6:7b5e]) by PAXPR04MB8459.eurprd04.prod.outlook.com\n ([fe80::4972:7eaa:b9f6:7b5e%3]) with mapi id 15.20.9818.033; Tue, 21 Apr 2026\n 12:25:38 +0000"],"X-Spam-Checker-Version":"SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-0.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,FORGED_SPF_HELO,SPF_HELO_PASS,T_SPF_PERMERROR autolearn=no\n autolearn_force=no version=3.4.2","ARC-Seal":"i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=KByV4yy6aKyxmnlu3ELtx7sZnXow/qY6oSNstbPHMql6HlEWocfEWj8qRsX7R0e2AzuB/idVCdSjkEnYPmmm0/U0SXrWUFSlCH2jy8S7wHOW1inECLbvufKRTwMAhIjhvw3IqMMnYTP0p1L9KFAM7SXJEZnHiwYKhuQn8Xw4jtYS+znq8R6mbnxavgSG6+ASdIPS1oNQoBxbETwFBpcnEl8oLe4y/nU3WzYL9paJdmEsNmpV3hzA+AFCeNQpvcVp9raraXwGZlSZwOYGIfSzE4ZkG0meqpr1o7vloTry60cLYuzTtKLrdPfjIjcPvzGEHg4cPBtmZyuf53UIQsVVTw==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=8CXOninQ8tVLobekXFACSL93eiX5GN/OiA3utpezSyQ=;\n b=cpJ+92+wyK9ny8OgdpsHBRxvCO5/9dNs2S/g3UDtQpk+T/sNDfzD9MjKDEat6pUiia9AHPZBVAktrPfMbdS1jQP3aOO+5+MCJwtOM1cHa/Bj3P5hsoUfBow9dZoSEhqz1QcqU7M/MnEvQ5T0cRx+Ln+1h12Y5ADlVUUx4BPixI6p/S2eUAsbsUX7z4xdRpMj3pbDU5j10ea4pmVvv+LmZ1U8dNz0ADPZ3Qgu44RERFjGyRD0vgu+TO+2WjhjWzRCmDQmiF8fWDt9eKFxKNwWUyQCsQyazPXrB91rjCYVaN+2azYMD69OSAEga9QUML6PEhKnW3PWinY7Nd1N5DUNPQ==","ARC-Authentication-Results":"i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com;\n dkim=pass header.d=oss.nxp.com; arc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com;\n s=selector1-NXP1-onmicrosoft-com;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=8CXOninQ8tVLobekXFACSL93eiX5GN/OiA3utpezSyQ=;\n b=NcZxQxHbCWPktexy7Ym7w8/d2eV9UuKui69SBJZXp8NqaesJ+DECBbKlwFUlURLHG3SHMGvMldtYwATlwcDFknotPvQeiTAG6evvwtpxL6dcDiyDvqSXO8xHlXiK04Ulu7zernMAMSO0h8nWW3mwkl8QUpUjjN3YCnfJJ5WBDz7vdbf1QFzWU1aSMxH59HSp/xHm098iPLvd6D0X6rT3KK+U1KPLseaQWlQ+XN98i3ovYjWAXQs+UOiaNrU1hKNDxFTdXXdxGAmYbVw22loOLcA7cjTz1EHllKaKYO4617MmUrBKsAMgRpYG4eHxvvLR9+njJH5EfFGWqRiXkA+Dkw==","From":"\"Peng Fan (OSS)\" <peng.fan@oss.nxp.com>","Date":"Tue, 21 Apr 2026 21:41:19 +0800","Subject":"[PATCH 07/15] imx8mq: Correct signed_hdmi firmware position","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-Id":"<20260421-imx8mq-dm-pmic-v1-7-0e2b490542b1@nxp.com>","References":"<20260421-imx8mq-dm-pmic-v1-0-0e2b490542b1@nxp.com>","In-Reply-To":"<20260421-imx8mq-dm-pmic-v1-0-0e2b490542b1@nxp.com>","To":"\"NXP i.MX U-Boot Team\" <uboot-imx@nxp.com>, u-boot@lists.denx.de,\n kernel@puri.sm","Cc":"Stefano Babic <sbabic@nabladev.com>, Fabio Estevam <festevam@gmail.com>,\n Tom Rini <trini@konsulko.com>, Yannic Moog <y.moog@phytec.de>,\n Ye Li <ye.li@nxp.com>, Ilias Apalodimas <ilias.apalodimas@linaro.org>,\n Alice Guo <alice.guo@nxp.com>,\n Marek Vasut <marek.vasut+renesas@mailbox.org>,\n Marco Franchi <marcofrk@gmail.com>, Alifer Moraes <alifer.wsdm@gmail.com>,\n \"Lukas F. Hartmann\" <lukas@mntre.com>, Patrick Wildt <patrick@blueri.se>,\n Marek Vasut <marex@denx.de>, Heiko Thiery <heiko.thiery@gmail.com>,\n Ilko Iliev <iliev@ronetix.at>, Angus Ainslie <angus@akkea.ca>,\n Peng Fan <peng.fan@nxp.com>","X-Mailer":"b4 0.14.3","X-ClientProxiedBy":"MAXP287CA0011.INDP287.PROD.OUTLOOK.COM\n (2603:1096:a00:49::24) To PAXPR04MB8459.eurprd04.prod.outlook.com\n (2603:10a6:102:1da::15)","MIME-Version":"1.0","X-MS-Exchange-MessageSentRepresentingType":"1","X-MS-PublicTrafficType":"Email","X-MS-TrafficTypeDiagnostic":"PAXPR04MB8459:EE_|PAXPR04MB9349:EE_","X-MS-Office365-Filtering-Correlation-Id":"48211a62-3690-4153-f3e6-08de9fa117e5","X-MS-Exchange-SharedMailbox-RoutingAgent-Processed":"True","X-LD-Processed":"686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr","X-MS-Exchange-SenderADCheck":"1","X-MS-Exchange-AntiSpam-Relay":"0","X-Microsoft-Antispam":"BCL:0;\n ARA:13230040|19092799006|366016|52116014|7416014|376014|1800799024|38350700014|56012099003|18002099003|22082099003;","X-Microsoft-Antispam-Message-Info":"\n EZeeW1XlmM+uwZ2v1OTEmzNL6octBb6LsvgOlqU7APYGiXL9P9RShK/rp2j/p4A68kWBe4c/Uf+pVmIe1nnFMQjRJ047udnIAP9K/5DJhWYijEKSIatoDOZy78GWW6A6z2aLcwrz+svswhvmyu3Hf0ck3qmt8QiYGUM96f6V8YciHKdPfnsFQ37xiWVQLfqqbpYRqTf4exIjsaZNzE1MD9362IXTHWjdCmJn/9oW+Xe7EqDbIrHyXSRNHNYsFMZtTtGuifW822E+zIBgvcDYTVKNq9tp4HoU3tl66biu2HF6S5W1950rf3uq6aBR+PnVnvlf6um7TatnsRzEfx1hFPbWaYeJJOUqpM7FvDa2/ggMTTkY8a7bnCOXeEXpubLexXH6kH95+rzcA7IcVYSSsEKG0SvVcR7kdTBFBgGnwMJAaovNK1+SG4/3rw0xlXn5nrx85HlYH6BBqoBF8PCm0fiJxI6FRr6w/cwi23/d2nd0KpuMLr63rGXJPrigwsYJjRjvkyG2hygmyTF7EMNjUM+yrdM23eAUZnSyri+C1qeghenPF6xKwnk7N8sRXZxV0ZDB6e7ZMNtPTE3r0xXjoI0XvxUWOIrfHHO4uhxQfNCohKCwwhSERP0RcGgx089md8OjXdQBRIqr8VoZCzOm1Za6hTOkyvx4QjtAA5uI36P0sDQzrvcenzzu2j9z3J76V7PIWSh80Hu0y8juiBA75UXqYH4C/t0YYNBgDQCaY4pFGkCVcNJ9HwYJfx+WheNKEmOmcvzagK6vfrvKeN1yE9to9ILBaQFGp+D3AVydm1k=","X-Forefront-Antispam-Report":"CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:PAXPR04MB8459.eurprd04.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230040)(19092799006)(366016)(52116014)(7416014)(376014)(1800799024)(38350700014)(56012099003)(18002099003)(22082099003);\n DIR:OUT; SFP:1101;","X-MS-Exchange-AntiSpam-MessageData-ChunkCount":"1","X-MS-Exchange-AntiSpam-MessageData-0":"=?utf-8?q?iL36zG+bScfOPIaFSqpLMsJCkLOO?=\n\t=?utf-8?q?PRvjIYdayKdp8sBdetb0BPKWnRntZ+xOkVVpNQjF1F+3UjxqWmRGY3AQtcsbRfAOn?=\n\t=?utf-8?q?SZW9l/Sn+pyVrCqpdqUpfGqiobnL/w6SdlJhiPeTEam+pYGvsdtj71w/XXADIDDRm?=\n\t=?utf-8?q?0fRlic7JVWezsQPpuYqar6yOM9J2VccHibOs198XFeBaLsjmJw4g1nJHSO0H/NhmA?=\n\t=?utf-8?q?217xJJW81c9zpFvkTsYOZQL42eREgyg5MHYzyfgTUq99hY0bm9NNSHZo3W0QSh2pU?=\n\t=?utf-8?q?+UR4Hh3fndnRf+71JfEgeZReTiqOoVT2oXZ2OtM/4RIAIZQnaKEjGUC2vFar1FVL6?=\n\t=?utf-8?q?sGGt8L1V78ZxqYN022jCqjxmTP8RaieW3c8vV5eL6nVTJIV+GE0uWJxoHRZpWRnOJ?=\n\t=?utf-8?q?FD1G7Kfr1YvhgMtYy0Cnukc8XuHaU5Y+SfqwS/U2sHXEl/+5cuTaEISZAm1bfmZGT?=\n\t=?utf-8?q?3ScTbg77Zg6HTBw6dStFp9+y8BQYqsrIuSpAo1nioaSKFTTHid0oU6y8O1ophWiof?=\n\t=?utf-8?q?WTd9nDt98r+eyiziKkyUZtS5CkBbgwqleP541jwyG4rUMt9Ipqx+hPoDFYzgmaHfc?=\n\t=?utf-8?q?yykt1fR+DeH96inYW+FpkJzz1D6Vc/qhiQ3M8E5J5H7qCOrXqSJByKOAZqPcQYqxz?=\n\t=?utf-8?q?6B67gKM9Ltx3u+byNsqquXK53wHGeFarq2f5jAMgE/junkzTHzBXQzmt/2bvEBjwG?=\n\t=?utf-8?q?Z3Lvz8dPtFC5z3D5tvbOEaF3W1xyRn0q0wPkTEhT3f5oURWAFInhMxSB6T9aadWq3?=\n\t=?utf-8?q?luPOPquocWDEQPEuoflHF0Jhe8zhLXyuccWzcR5AhVyGGJ0ArDytqEzkNrdaliWRl?=\n\t=?utf-8?q?o0PvWCieYZKo87OyBqoE3oJoV3QOAcPuFQOBiIIpUT+v7DU06UDh0FMxWEQogYX/P?=\n\t=?utf-8?q?sxZL16okMo2l1XUL91EcPYJkuJYDsLKDjR8JTf0Dho+zya8ywsKTSy9OctMm34VNt?=\n\t=?utf-8?q?SYQDNeLRkfXn/8o1PBfR6BAJLrtDSWqMw0sIGBnMBZ75EJRKZfuG2ZXpYcD3L9ZKi?=\n\t=?utf-8?q?wUOljea5p8gcu6U+ccFIP43+SSpqcuXCVZkMlqTHTNnR34sbLrS5lB0FPRrqoJDd6?=\n\t=?utf-8?q?3/xgoz4rW/JO1zxnMsSvyJcImjvYUcx0IgknaL+AZ5M18okkN/2xO9+4HcdLdV4wh?=\n\t=?utf-8?q?6t/wa+qd3i3QoksyFVMZ93Nm5M5no+q0M0TzMuODNI9SvERMwxzuM03OLktDAbaIX?=\n\t=?utf-8?q?RAIpn9Bd+OJWTOeWpWOFq7WLA+xHmyD46rpzO1j0AVJB9DifPJUxFXvSY+0tR9rkL?=\n\t=?utf-8?q?22REflUOyrKr5Us23oIVbsH75l0yVyNJO9MXWjvfjAcNs0zUYaEJx+MWFxDw0JBOT?=\n\t=?utf-8?q?x609DKbhWQQytn6kXy3SAln4Qk/zTbTjpJRg/v3MhxwprmopRjbXvc/rqfIjlAlRP?=\n\t=?utf-8?q?7IRB2sG+1hKfmHh7KzrzdXUClVhy98xgc/tVYcxZfMff77ljwjdSrJFRL88VNCSj2?=\n\t=?utf-8?q?bwm+j17L7RP447y4zDiNCZupJhyC3KXyXHCjUQE5ryeWE5Fbp5p2zdqC0Nv9YqVXe?=\n\t=?utf-8?q?dhT8l9c93ZlwxFh09huPnNoUSYS9U//GkGIhbc68yvCOlX2nro70qkdsocMObLC/G?=\n\t=?utf-8?q?u1Qc5lbkBvwif+jR64DrtTe8bBWq1jSKa/2x4lbS2IPJ5D//8KetFry/JL6sedpNl?=\n\t=?utf-8?q?pqZsaoAvCFpEMOftKV2SIHzy0HmbRmCg=3D=3D?=","X-OriginatorOrg":"oss.nxp.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"\n 48211a62-3690-4153-f3e6-08de9fa117e5","X-MS-Exchange-CrossTenant-AuthSource":"PAXPR04MB8459.eurprd04.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"21 Apr 2026 12:25:38.1549 (UTC)","X-MS-Exchange-CrossTenant-FromEntityHeader":"Hosted","X-MS-Exchange-CrossTenant-Id":"686ea1d3-bc2b-4c6f-a92c-d99c5c301635","X-MS-Exchange-CrossTenant-MailboxType":"HOSTED","X-MS-Exchange-CrossTenant-UserPrincipalName":"\n EgyYJhZdaj0SEC4d0Of9h2MLFAm+OeOHlTifeZz7TAsR8pPWLfm+JEJ9Ld8jZ46C59360VagSzqqV6tgp+rpYg==","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"PAXPR04MB9349","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":"From: Peng Fan <peng.fan@nxp.com>\n\nsigned_hdmi_imx8m.bin is already signed and has a IVT header. It should not\nbe put in u-boot-spl-mkimage.signed.bin. Move it to head of flash.bin\nfollowing NXP imx-mkimage. Keeping it in u-boot-spl-mkimage.signed.bin also\nconsumes a lot of TCM space which is not expected.\n\nWhile moving it to head of flash.bin, other changes are required,\nu-boot.itb is put at sector 768 per defconfig, so u-boot.itb binman\noffset should be updated and it should be moved out from binman section.\n\nAlso binman symbol address are updated, so need to subtract u-boot-spl\nimage_pos + CONFIG_SPL_TEXT_BASE to find the correct location of ddr phy\nfirmware.\n\nBecause there is 1KB padding in HDMI firmware, use 32KB when burning\nflash.bin to sd card.\n\nSigned-off-by: Peng Fan <peng.fan@nxp.com>\n---\n arch/arm/dts/imx8mq-librem5-r4-u-boot.dtsi |   2 +-\n arch/arm/dts/imx8mq-u-boot.dtsi            | 240 ++++++++++++++++-------------\n doc/board/nxp/imx8mq_evk.rst               |   4 +-\n drivers/ddr/imx/phy/helper.c               |  13 ++\n 4 files changed, 148 insertions(+), 111 deletions(-)","diff":"diff --git a/arch/arm/dts/imx8mq-librem5-r4-u-boot.dtsi b/arch/arm/dts/imx8mq-librem5-r4-u-boot.dtsi\nindex 98da015a444..4d326040c0a 100644\n--- a/arch/arm/dts/imx8mq-librem5-r4-u-boot.dtsi\n+++ b/arch/arm/dts/imx8mq-librem5-r4-u-boot.dtsi\n@@ -10,7 +10,7 @@\n \tbootph-pre-ram;\n };\n \n-&binman_imx_spl {\n+&binman {\n \tsection {\n \t\tsigned-hdmi-imx8m {\n \t\t\tfilename = \"signed_dp_imx8m.bin\";\ndiff --git a/arch/arm/dts/imx8mq-u-boot.dtsi b/arch/arm/dts/imx8mq-u-boot.dtsi\nindex 0687fcdbd68..ed2c704f2e5 100644\n--- a/arch/arm/dts/imx8mq-u-boot.dtsi\n+++ b/arch/arm/dts/imx8mq-u-boot.dtsi\n@@ -41,6 +41,33 @@\n \tfilename = \"flash.bin\";\n \tsection {\n \t\tpad-byte = <0x00>;\n+\t\t/*\n+\t\t * signed_hdmi_imx8m.bin contains a 1KB zero-filled padding at\n+\t\t * its beginning. This padding has no functional purpose, but\n+\t\t * the firmware is provided and signed by NXP, so the head\n+\t\t * must be preserved and should not be removed.\n+\t\t *\n+\t\t * When the signed HDMI firmware is placed at the beginning of\n+\t\t * flash.bin, the IVT header of u-boot-spl must still reside at\n+\t\t * a 4KB-aligned address. Since flash.bin starts with the HDMI\n+\t\t * firmware (including its 1KB padding), there is already a 1KB\n+\t\t * empty region at the head of flash.bin.\n+\t\t *\n+\t\t * The required 4KB alignment is therefore calculated relative\n+\t\t * to the location after this 1KB padding. To achieve this, we\n+\t\t * explicitly set align and align-size to 0x1000, and add an\n+\t\t * additional 0x400 (1KB) fill to account for the padding.\n+\t\t */\n+\t\tsigned-hdmi-imx8m {\n+\t\t\tfilename = \"signed_hdmi_imx8m.bin\";\n+\t\t\ttype = \"blob-ext\";\n+\t\t\talign = <0x1000>;\n+\t\t\talign-size = <0x1000>;\n+\t\t};\n+\n+\t\tfill {\n+\t\t\tsize = <0x400>;\n+\t\t};\n \n #ifdef CONFIG_IMX_HAB\n \t\tnxp-imx8mcst@0 {\n@@ -51,145 +78,142 @@\n #endif\n \n \t\t\tbinman_imx_spl: nxp-imx8mimage {\n-\t\t\t\tfilename = \"u-boot-spl-mkimage.bin\";\n-\t\t\t\tnxp,boot-from = \"sd\";\n-\t\t\t\tnxp,rom-version = <1>;\n-\t\t\t\tnxp,loader-address = <CONFIG_SPL_TEXT_BASE>;\n-\t\t\t\targs;\t/* Needed by mkimage etype superclass */\n-\n-\t\t\t\tsection {\n-\t\t\t\t\talign = <4>;\n-\t\t\t\t\talign-size = <4>;\n-\t\t\t\t\tfilename = \"u-boot-spl-ddr.bin\";\n-\t\t\t\t\tpad-byte = <0xff>;\n-\n-\t\t\t\t\tu-boot-spl {\n-\t\t\t\t\t\talign-end = <4>;\n-\t\t\t\t\t\tfilename = \"u-boot-spl.bin\";\n-\t\t\t\t\t};\n+\t\t\tfilename = \"u-boot-spl-mkimage.bin\";\n+\t\t\tnxp,boot-from = \"sd\";\n+\t\t\tnxp,rom-version = <1>;\n+\t\t\tnxp,loader-address = <CONFIG_SPL_TEXT_BASE>;\n+\t\t\targs;\t/* Needed by mkimage etype superclass */\n \n-\t\t\t\t\tddr-1d-imem-fw {\n-\t\t\t\t\t\tfilename = \"lpddr4_pmu_train_1d_imem.bin\";\n-\t\t\t\t\t\talign-end = <4>;\n-\t\t\t\t\t\ttype = \"blob-ext\";\n-\t\t\t\t\t};\n+\t\t\tsection {\n+\t\t\t\talign = <4>;\n+\t\t\t\talign-size = <4>;\n+\t\t\t\tfilename = \"u-boot-spl-ddr.bin\";\n+\t\t\t\tpad-byte = <0xff>;\n \n-\t\t\t\t\tddr-1d-dmem-fw {\n-\t\t\t\t\t\tfilename = \"lpddr4_pmu_train_1d_dmem.bin\";\n-\t\t\t\t\t\talign-end = <4>;\n-\t\t\t\t\t\ttype = \"blob-ext\";\n-\t\t\t\t\t};\n+\t\t\t\tu-boot-spl {\n+\t\t\t\t\talign-end = <4>;\n+\t\t\t\t\tfilename = \"u-boot-spl.bin\";\n+\t\t\t\t};\n \n-\t\t\t\t\tddr-2d-imem-fw {\n-\t\t\t\t\t\tfilename = \"lpddr4_pmu_train_2d_imem.bin\";\n-\t\t\t\t\t\talign-end = <4>;\n-\t\t\t\t\t\ttype = \"blob-ext\";\n-\t\t\t\t\t};\n+\t\t\t\tddr-1d-imem-fw {\n+\t\t\t\t\tfilename = \"lpddr4_pmu_train_1d_imem.bin\";\n+\t\t\t\t\talign-end = <4>;\n+\t\t\t\t\ttype = \"blob-ext\";\n+\t\t\t\t};\n \n-\t\t\t\t\tddr-2d-dmem-fw {\n-\t\t\t\t\t\tfilename = \"lpddr4_pmu_train_2d_dmem.bin\";\n-\t\t\t\t\t\talign-end = <4>;\n-\t\t\t\t\t\ttype = \"blob-ext\";\n-\t\t\t\t\t};\n+\t\t\t\tddr-1d-dmem-fw {\n+\t\t\t\t\tfilename = \"lpddr4_pmu_train_1d_dmem.bin\";\n+\t\t\t\t\talign-end = <4>;\n+\t\t\t\t\ttype = \"blob-ext\";\n+\t\t\t\t};\n \n-\t\t\t\t\tsigned-hdmi-imx8m {\n-\t\t\t\t\t\tfilename = \"signed_hdmi_imx8m.bin\";\n-\t\t\t\t\t\ttype = \"blob-ext\";\n-\t\t\t\t\t};\n+\t\t\t\tddr-2d-imem-fw {\n+\t\t\t\t\tfilename = \"lpddr4_pmu_train_2d_imem.bin\";\n+\t\t\t\t\talign-end = <4>;\n+\t\t\t\t\ttype = \"blob-ext\";\n+\t\t\t\t};\n+\n+\t\t\t\tddr-2d-dmem-fw {\n+\t\t\t\t\tfilename = \"lpddr4_pmu_train_2d_dmem.bin\";\n+\t\t\t\t\talign-end = <4>;\n+\t\t\t\t\ttype = \"blob-ext\";\n \t\t\t\t};\n \t\t\t};\n+\t\t};\n #ifdef CONFIG_IMX_HAB\n \t\t};\n+#endif\n+\t};\n \n-\t\tnxp-imx8mcst@1 {\n-\t\t\tfilename = \"u-boot-fit.signed.bin\";\n-\t\t\tnxp,loader-address = <CONFIG_SPL_LOAD_FIT_ADDRESS>;\n-\t\t\toffset = <0x58000>;\n-\t\t\targs;\t/* Needed by mkimage etype superclass */\n+#ifdef CONFIG_IMX_HAB\n+\tnxp-imx8mcst@1 {\n+\t\tfilename = \"u-boot-fit.signed.bin\";\n+\t\tnxp,loader-address = <CONFIG_SPL_LOAD_FIT_ADDRESS>;\n+\t\toffset = <0x58400>;\n+\t\targs;\t/* Needed by mkimage etype superclass */\n #endif\n \n-\t\t\tbinman_imx_fit: fit {\n-\t\t\t\tdescription = \"Configuration to load ATF before U-Boot\";\n-\t\t\t\tfilename = \"u-boot.itb\";\n+\t\tbinman_imx_fit: fit {\n+\t\t\tdescription = \"Configuration to load ATF before U-Boot\";\n+\t\t\tfilename = \"u-boot.itb\";\n #ifndef CONFIG_IMX_HAB\n-\t\t\t\tfit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;\n+\t\t\tfit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;\n #endif\n-\t\t\t\t#address-cells = <1>;\n-\n-\t\t\t\toffset = <0x57c00>;\n-\n-\t\t\t\timages {\n-\t\t\t\t\tuboot {\n-\t\t\t\t\t\tarch = \"arm64\";\n-\t\t\t\t\t\tcompression = \"none\";\n-\t\t\t\t\t\tdescription = \"U-Boot (64-bit)\";\n-\t\t\t\t\t\tload = <CONFIG_TEXT_BASE>;\n-\t\t\t\t\t\ttype = \"standalone\";\n-\n-\t\t\t\t\t\tuboot-blob {\n-\t\t\t\t\t\t\tfilename = \"u-boot-nodtb.bin\";\n-\t\t\t\t\t\t\ttype = \"blob-ext\";\n-\t\t\t\t\t\t};\n+\t\t\t#address-cells = <1>;\n+\n+\t\t\toffset = <0x58000>;\n+\n+\t\t\timages {\n+\t\t\t\tuboot {\n+\t\t\t\t\tarch = \"arm64\";\n+\t\t\t\t\tcompression = \"none\";\n+\t\t\t\t\tdescription = \"U-Boot (64-bit)\";\n+\t\t\t\t\tload = <CONFIG_TEXT_BASE>;\n+\t\t\t\t\ttype = \"standalone\";\n+\n+\t\t\t\t\tuboot-blob {\n+\t\t\t\t\t\tfilename = \"u-boot-nodtb.bin\";\n+\t\t\t\t\t\ttype = \"blob-ext\";\n \t\t\t\t\t};\n+\t\t\t\t};\n \n #ifndef CONFIG_ARMV8_PSCI\n-\t\t\t\t\tatf {\n-\t\t\t\t\t\tarch = \"arm64\";\n-\t\t\t\t\t\tcompression = \"none\";\n-\t\t\t\t\t\tdescription = \"ARM Trusted Firmware\";\n-\t\t\t\t\t\tentry = <0x910000>;\n-\t\t\t\t\t\tload = <0x910000>;\n-\t\t\t\t\t\ttype = \"firmware\";\n-\n-\t\t\t\t\t\tatf-blob {\n-\t\t\t\t\t\t\tfilename = \"bl31.bin\";\n-\t\t\t\t\t\t\ttype = \"blob-ext\";\n-\t\t\t\t\t\t};\n+\t\t\t\tatf {\n+\t\t\t\t\tarch = \"arm64\";\n+\t\t\t\t\tcompression = \"none\";\n+\t\t\t\t\tdescription = \"ARM Trusted Firmware\";\n+\t\t\t\t\tentry = <0x910000>;\n+\t\t\t\t\tload = <0x910000>;\n+\t\t\t\t\ttype = \"firmware\";\n+\n+\t\t\t\t\tatf-blob {\n+\t\t\t\t\t\tfilename = \"bl31.bin\";\n+\t\t\t\t\t\ttype = \"blob-ext\";\n \t\t\t\t\t};\n+\t\t\t\t};\n #endif\n \n-\t\t\t\t\ttee: tee {\n-\t\t\t\t\t\tdescription = \"OP-TEE\";\n-\t\t\t\t\t\ttype = \"tee\";\n-\t\t\t\t\t\tarch = \"arm64\";\n-\t\t\t\t\t\tcompression = \"none\";\n-\t\t\t\t\t\tos = \"tee\";\n-\t\t\t\t\t\tload = <CONFIG_IMX8M_OPTEE_LOAD_ADDR>;\n-\t\t\t\t\t\tentry = <CONFIG_IMX8M_OPTEE_LOAD_ADDR>;\n-\n-\t\t\t\t\t\ttee-os {\n-\t\t\t\t\t\t\tfilename = \"tee.bin\";\n-\t\t\t\t\t\t\toptional;\n-\t\t\t\t\t\t};\n+\t\t\t\ttee: tee {\n+\t\t\t\t\tdescription = \"OP-TEE\";\n+\t\t\t\t\ttype = \"tee\";\n+\t\t\t\t\tarch = \"arm64\";\n+\t\t\t\t\tcompression = \"none\";\n+\t\t\t\t\tos = \"tee\";\n+\t\t\t\t\tload = <CONFIG_IMX8M_OPTEE_LOAD_ADDR>;\n+\t\t\t\t\tentry = <CONFIG_IMX8M_OPTEE_LOAD_ADDR>;\n+\n+\t\t\t\t\ttee-os {\n+\t\t\t\t\t\tfilename = \"tee.bin\";\n+\t\t\t\t\t\toptional;\n \t\t\t\t\t};\n+\t\t\t\t};\n \n-\t\t\t\t\tfdt {\n-\t\t\t\t\t\tcompression = \"none\";\n-\t\t\t\t\t\tdescription = \"NAME\";\n-\t\t\t\t\t\ttype = \"flat_dt\";\n+\t\t\t\tfdt {\n+\t\t\t\t\tcompression = \"none\";\n+\t\t\t\t\tdescription = \"NAME\";\n+\t\t\t\t\ttype = \"flat_dt\";\n \n-\t\t\t\t\t\tuboot-fdt-blob {\n-\t\t\t\t\t\t\tfilename = \"u-boot.dtb\";\n-\t\t\t\t\t\t\ttype = \"blob-ext\";\n-\t\t\t\t\t\t};\n+\t\t\t\t\tuboot-fdt-blob {\n+\t\t\t\t\t\tfilename = \"u-boot.dtb\";\n+\t\t\t\t\t\ttype = \"blob-ext\";\n \t\t\t\t\t};\n \t\t\t\t};\n+\t\t\t};\n \n-\t\t\t\tconfigurations {\n-\t\t\t\t\tdefault = \"conf\";\n+\t\t\tconfigurations {\n+\t\t\t\tdefault = \"conf\";\n \n-\t\t\t\t\tconf {\n-\t\t\t\t\t\tdescription = \"NAME\";\n-\t\t\t\t\t\tfdt = \"fdt\";\n-\t\t\t\t\t\tfirmware = \"uboot\";\n+\t\t\t\tconf {\n+\t\t\t\t\tdescription = \"NAME\";\n+\t\t\t\t\tfdt = \"fdt\";\n+\t\t\t\t\tfirmware = \"uboot\";\n #ifndef CONFIG_ARMV8_PSCI\n-\t\t\t\t\t\tloadables = \"atf\", \"tee\";\n+\t\t\t\t\tloadables = \"atf\", \"tee\";\n #endif\n-\t\t\t\t\t};\n \t\t\t\t};\n \t\t\t};\n-#ifdef CONFIG_IMX_HAB\n \t\t};\n-#endif\n+#ifdef CONFIG_IMX_HAB\n \t};\n+#endif\n };\ndiff --git a/doc/board/nxp/imx8mq_evk.rst b/doc/board/nxp/imx8mq_evk.rst\nindex 4b0624e7e86..4a9d9e404c5 100644\n--- a/doc/board/nxp/imx8mq_evk.rst\n+++ b/doc/board/nxp/imx8mq_evk.rst\n@@ -45,11 +45,11 @@ Build U-Boot\n    $ make imx8mq_evk_defconfig\n    $ make\n \n-Burn the flash.bin to MicroSD card offset 33KB:\n+Burn the flash.bin to MicroSD card offset 32KB:\n \n .. code-block:: bash\n \n-   $sudo dd if=flash.bin of=/dev/sd[x] bs=1024 seek=33 conv=notrunc\n+   $sudo dd if=flash.bin of=/dev/sd[x] bs=1024 seek=32 conv=notrunc\n \n Boot\n ----\ndiff --git a/drivers/ddr/imx/phy/helper.c b/drivers/ddr/imx/phy/helper.c\nindex b0dfc3a0b4f..147ec9ab061 100644\n--- a/drivers/ddr/imx/phy/helper.c\n+++ b/drivers/ddr/imx/phy/helper.c\n@@ -38,6 +38,8 @@ binman_sym_declare(ulong, ddr_2d_dmem_fw, image_pos);\n binman_sym_declare(ulong, ddr_2d_dmem_fw, size);\n #endif\n \n+binman_sym_declare(ulong, u_boot_spl, image_pos);\n+\n /* We need PHY iMEM PHY is 32KB padded */\n void ddr_load_train_firmware(enum fw_type type)\n {\n@@ -49,6 +51,7 @@ void ddr_load_train_firmware(enum fw_type type)\n \tunsigned long dmem_start;\n \tunsigned long imem_len = IMEM_LEN, dmem_len = DMEM_LEN;\n \tstatic enum fw_type last_type = -1;\n+\tunsigned long spl_start = 0;\n \n \t/* If FW doesn't change, we can save the loading. */\n \tif (last_type == type)\n@@ -67,6 +70,9 @@ void ddr_load_train_firmware(enum fw_type type)\n \tdmem_start = imem_start + imem_len;\n \n \tif (BINMAN_SYMS_OK) {\n+\t\tif (IS_ENABLED(CONFIG_IMX8MQ))\n+\t\t\tspl_start = binman_sym(ulong, u_boot_spl, image_pos);\n+\n \t\tswitch (type) {\n \t\tcase FW_1D_IMAGE:\n \t\t\timem_start = binman_sym(ulong, ddr_1d_imem_fw, image_pos);\n@@ -83,6 +89,13 @@ void ddr_load_train_firmware(enum fw_type type)\n #endif\n \t\t\tbreak;\n \t\t}\n+\n+\t\tif (IS_ENABLED(CONFIG_IMX8MQ)) {\n+\t\t\timem_start -= spl_start;\n+\t\t\timem_start += CONFIG_SPL_TEXT_BASE;\n+\t\t\tdmem_start -= spl_start;\n+\t\t\tdmem_start += CONFIG_SPL_TEXT_BASE;\n+\t\t}\n \t}\n \n \tpr_from32 = imem_start;\n","prefixes":["07/15"]}