Received: by 2002:a05:6358:11c7:b0:104:8066:f915 with SMTP id i7csp1437028rwl; Fri, 24 Mar 2023 10:27:28 -0700 (PDT) X-Google-Smtp-Source: AKy350Zs5162wLzQFm/zbQ15YuhunLxYHWm98UmoFS3FWkuZND3RaBGqqgkvjhlONcFyfWM5h4zY X-Received: by 2002:a17:903:22d2:b0:19c:dd49:9bf8 with SMTP id y18-20020a17090322d200b0019cdd499bf8mr9838937plg.28.1679678848348; Fri, 24 Mar 2023 10:27:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1679678848; cv=none; d=google.com; s=arc-20160816; b=F1PFQWV39MxZNKC3ZJ8DSk3Cqw4KRl99UEyaC3d+YaUydf/C8mHQMQRySDMNYL1eDh aborQIY1IhiSu8ITHUwX13DLXl8PtQ2U1WIlvr27KHJbv9jgYbJjvjr1/JQY90UgZUay uSVV4MyU1lWUDLlYdcB+JFBKsASCxJmOTjJo/pt2QN0O1D7EoCRNDmT4hGnDZydlMIwd QiE2qDMLVGtO4tnLlJrD+rS/xUGszeG6uOt1r/ylqB5ZkRj8u+v1WTM1JzNyddDvnz06 NCjlKH9Q/2n/JdokTPv+rWcK3ePsylFKvMi6zz+gbG5CXaCo61isbPGMbwIi14yA52Lp VMIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=wRdG1BtF0+O5vmK82BeeaZgtX/zg2FQsRJkCdAg4C4A=; b=1C/ykdE3uQnd1fpfKYKWYcocg21N5HXOYjEUxScp6/n92D/gia3sy637sxub+KkrkL f0NoE+KuNxjHoiIaXYTD7jbiTMG4LEcK5i1vZMH1p+dls5FksYg5DgraiOCU/u6RgA+z 4DfL+JCEN0aBdhpzU/iGUDhB7qAc7Aaqjj+7n+S243GgXvTJ6HQH8nIrqzrifB8ufOry y6cDLMMIQjmEb+kQ8Jl4bZTxIbc+g0yB9NTXtkqaux8wqQt8VakAeCCWwvkoFc/LBf+/ Ux50gDHaeN5TIsA5wWVDBsixDAwFBSYyY2Vikuwez9YBo0pKBe7n/uOi190ptEhhO+fS nbgw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b="fQDk/YQL"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id m14-20020a17090a5a4e00b0023fc6dc1092si214400pji.145.2023.03.24.10.27.16; Fri, 24 Mar 2023 10:27:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b="fQDk/YQL"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229472AbjCXRUC (ORCPT + 99 others); Fri, 24 Mar 2023 13:20:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35542 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229540AbjCXRUA (ORCPT ); Fri, 24 Mar 2023 13:20:00 -0400 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A8828B771 for ; Fri, 24 Mar 2023 10:19:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1679678350; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=wRdG1BtF0+O5vmK82BeeaZgtX/zg2FQsRJkCdAg4C4A=; b=fQDk/YQL11mG+LooVGZBivjPdfmGFixdEoEiCX8SOdqFDxDhiRLK3bYZVooBFARtyYYSTS Ouf2motaX0WQEW6wl0HLb+qMoQY/CV6J4j/BAAgZEjn8/dlVaD9AANPlOvxrs0/YH3sDir qlFc28I6FwBHmRia30hytzHolH7eIqE= Received: from mail-qt1-f198.google.com (mail-qt1-f198.google.com [209.85.160.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-161-abBHhgGEM2uDz4kZuAycSA-1; Fri, 24 Mar 2023 13:19:09 -0400 X-MC-Unique: abBHhgGEM2uDz4kZuAycSA-1 Received: by mail-qt1-f198.google.com with SMTP id h6-20020a05622a170600b003e22c6de617so1418622qtk.13 for ; Fri, 24 Mar 2023 10:19:09 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679678348; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=wRdG1BtF0+O5vmK82BeeaZgtX/zg2FQsRJkCdAg4C4A=; b=VUbJy/kvXPzE6IrwKy4xB7AVFvc8+if9GVbGYDCS1uE5KwoK1Iazij/4UZLyU6bkDY +TUoFOUcw0CVtkgBDgQv1t0gjz6akJ0Ek7Egrz5VaNcFNpwgbTfoiVekIHXaAanD+8HM y7PXo3mFixonSBIq4d18ADNjhmL6HvfFZh7NX3w3zdmJT2OpFEHvGWdfCu0dZ054pj/D xn5sXFZZ873W7VVuJc5qEN6G3BUe9kIliMCUHTuU2ymI2tRqDS7/bOIunV2IONzNKQAC b6tc4rEkvjP9/1RSJAn5z152z5c8FISYPnaqO+qd4IqlWe5MEsZkrBhnceZA24z2Ig2Q ZnIg== X-Gm-Message-State: AO0yUKXYWkCMGsv1KFVLWVhNs4g2fOeGJ4fO1Lxtq8hGyY1cVja8Ti+4 9wydCpkJe//h0De7Vn6TdSqoQl9qI/UwLdnoIaarAdKGwnn1dUyuCv0cuEWmejRxP87z0zpvWS2 B1QFXuvCTNcUDwYDtFeCRFXHmgY8urE5o X-Received: by 2002:ac8:58cb:0:b0:3bf:b75a:d7a7 with SMTP id u11-20020ac858cb000000b003bfb75ad7a7mr17488891qta.7.1679678348514; Fri, 24 Mar 2023 10:19:08 -0700 (PDT) X-Received: by 2002:ac8:58cb:0:b0:3bf:b75a:d7a7 with SMTP id u11-20020ac858cb000000b003bfb75ad7a7mr17488859qta.7.1679678348241; Fri, 24 Mar 2023 10:19:08 -0700 (PDT) Received: from localhost (pool-71-184-142-128.bstnma.fios.verizon.net. [71.184.142.128]) by smtp.gmail.com with ESMTPSA id s128-20020a372c86000000b0074374e2b630sm14534036qkh.119.2023.03.24.10.19.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Mar 2023 10:19:07 -0700 (PDT) Date: Fri, 24 Mar 2023 13:19:09 -0400 From: Eric Chanudet To: Bjorn Andersson Cc: Andy Gross , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Prasad Sodagudi Subject: Re: [PATCH] arm64: dts: qcom: sa8775p: add symbols to dtb Message-ID: <20230324171909.t6hhuwzduypj5b5b@echanude> References: <20230309233945.1199358-1-echanude@redhat.com> <20230322025519.a5vrqljezo74qxwi@ripper> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230322025519.a5vrqljezo74qxwi@ripper> X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Mar 21, 2023 at 07:55:19PM -0700, Bjorn Andersson wrote: > On Thu, Mar 09, 2023 at 06:39:48PM -0500, Eric Chanudet wrote: > > ABL uses the __symbols__ section to process the DTB before passing it > > forward. Without it, the bootstrap is interrupted. > > > > If the reason is that ABL refuses to boot without it, then please have > ABL fixed. If on the other hand there is a valid reason for ABL to > require the dtb to have __symbols__ defined, please describe that - if > nothing else so that others know when this is supposed to be used. Here is what I understand from the ABL sources and discussions with Prasad: Android Boot Loader (ABL), the UEFI application to run before executing the kernel, implements the Qualcomm SCM protocol to call into TZ. One of these SCM call is trapped by the hypervisor, itself provided with the firmware package for the board, and returns to ABL some information about our VM. These information may include one or more DTBO. ABL then proceeds and tries to apply the overlays on the DTB it loaded from the Android Boot Image it is trying to boot. If there is an hypervisor and it returned at least one DTBO, ABL treats a failure to apply the DTBO (e.g, if __symbols__ are not available in the DTB) as critical and ends the boot. I was only ever given a firmware package that included the hypervisor and it always returned at least one DTBO. So enabling overlays is required to run this board, using the firmware I know of, with an upstream kernel and DTB at time of writing. I suppose ABL could be made to handle such failure as a warning and continue booting? Which comes down to ignoring the DTBO provided by the hypervisor. Maybe that still allows the kernel to run the board with limited functionality? Prior cases in the git history for enabling overlays covered board variants and extension headers (ti and nvidia). These do not fit what is happening here. In hindsight, I should have sent this as an RFC, with the above explanation to begin with, to ask about the limits and requirements. Maybe Prasad, or someone with a more comprehensive knowledge of this board, can fill the remaining gaps or correct my understanding of the boot sequence if I got something wrong? Thanks, -- Eric Chanudet