From patchwork Mon Oct 19 18:23:20 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bjorn Andersson X-Patchwork-Id: 11844913 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0DDF1C433E7 for ; Mon, 19 Oct 2020 18:24:21 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8CDC12231B for ; Mon, 19 Oct 2020 18:24:20 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="Qv+0PQlS"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="zs9NWLNI" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8CDC12231B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=5FG/a8VpkqXHVY8AqbjPe3VWU83LeVxu71t0X+lfEYk=; b=Qv+0PQlScZgZ2+PuM0jJFgdrfw RN8IL01tZwGFOBluYCdQObFdpztqVZ55WfGjKYgwdTg91pnSQagvZilAtJhKRvFYNywVvvJ46XydV gkMxKjuz5MwyD/RDp7wdtC4fMa+OhcZitt0YzwniC+zQg42wFJ9YRNUDcdiT8JPZ55MUqwiZBkpLq jjiMc0NV6WBIGoDiiTwrESyKvB66tI9seTibDEepSQcNQfKDIu/yj+OKgJgKPJm9171Y8i/QydoR0 SXz6jGwQgcg1rWpZY2DYmeULCcGDmkbEFBj4Ada4UpjXb4w/liFTTBcFbTaNPacf0/HMCr5DoGKs6 g7U0ZsQQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kUZo2-0001S8-43; Mon, 19 Oct 2020 18:22:50 +0000 Received: from mail-oo1-xc43.google.com ([2607:f8b0:4864:20::c43]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kUZnz-0001Q2-0b for linux-arm-kernel@lists.infradead.org; Mon, 19 Oct 2020 18:22:47 +0000 Received: by mail-oo1-xc43.google.com with SMTP id x1so86090ooo.12 for ; Mon, 19 Oct 2020 11:22:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=VpsiELiguu+j+d75TlHy7UatTKslEhtvU0VNkiyQTHE=; b=zs9NWLNI035QlA/VBI7c1W2y029/5QTx9et8nFbd2vTWzWmoW13w6gut5QKiSLyOcv /iVj0TrBKUDnDE5OOK6vn+u60m6BrHtX1IRsXHLSviusPu5cfGfTElzcPftNUTIyqb+5 E+su2boKZjvNwFFmNS8aqEDOo0Jjbtg1gtVyM2FL7Ms+J9RzDLhxfGSWfp834QlaIY1m ijmyO8/Y7KSAJINJ4woLIJF1CDp4YRJ16sEY7erjyyciGpT1sF22495HxPKYwvnZZs7I +KkR94uCA3tX2dGV2S1EAS/MB6Zq605p5Z8vOgZ8QAa8Vw1VqM/BsgZyAnHlOwoamCvs nngg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=VpsiELiguu+j+d75TlHy7UatTKslEhtvU0VNkiyQTHE=; b=TUMnHzH3PzrlEIBDdcOqcytKwrvOKkOg5OoqPwt99TjBcQ+4VnS4oON/wGzIZTZGgX FMqkSQTlnSqAjnxv8QR4KfzVXIALobscMkuyzQNnPxSO2HdzzJ92yefBffT0ngxrR7sR 4ioK7GWNujZnlhQ/yitgBJ2ewhS0ARXlIT7wkroijBelZSWbk4KekoPhd5WVh91vK+n6 sXBYKSA2lFhcpfy1FjsSATp2Q4QA3iFBFjlTGMOKCq2EV/J+q+exPkZG0660SNSeR4kV xPoCnei5anDtz1097Bb/Jip3LTqYHETNDuaK82Cp2u60Vks5RS1bYmdWRsyTyqpFkeRi Y7Tg== X-Gm-Message-State: AOAM530V0qvWG0GZ3H4IpCpJoFjlIt/eMfEXQy/gooPzcbEzFHvJ1/cG EF1Jn4P7wO89h/LLW1GuUNx/zw== X-Google-Smtp-Source: ABdhPJxsCpy/TBGLYx5Vl3+4B9L49mmC4/H7jkek9a/kPGO0kiKyGGtmak7p5gL4UV1db2SW7QYkbA== X-Received: by 2002:a4a:972c:: with SMTP id u41mr931370ooi.10.1603131764686; Mon, 19 Oct 2020 11:22:44 -0700 (PDT) Received: from localhost.localdomain (104-57-184-186.lightspeed.austtx.sbcglobal.net. [104.57.184.186]) by smtp.gmail.com with ESMTPSA id o8sm175296oog.47.2020.10.19.11.22.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Oct 2020 11:22:44 -0700 (PDT) From: Bjorn Andersson To: Will Deacon , Robin Murphy , Joerg Roedel , Sai Prakash Ranjan , Jordan Crouse , Thierry Reding , Rob Clark Subject: [PATCH v5 0/3] iommu/arm-smmu-qcom: Support maintaining bootloader mappings Date: Mon, 19 Oct 2020 11:23:20 -0700 Message-Id: <20201019182323.3162386-1-bjorn.andersson@linaro.org> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201019_142247_060961_02593FE3 X-CRM114-Status: GOOD ( 11.81 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-arm-msm@vger.kernel.org, iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org This is the revised fourth attempt of inheriting the stream mapping for the framebuffer on many Qualcomm platforms, in order to not hit catastrophic faults during arm-smmu initialization. The new approach does, based on Robin's suggestion, take a much more direct approach with the allocation of a context bank for bypass emulation and use of this context bank pretty much isolated to the Qualcomm specific implementation. The patchset has been tested to boot DB845c and RB5 (with splash screen) and Lenovo Yoga C630 (with EFI framebuffer). Bjorn Andersson (3): iommu/arm-smmu: Allow implementation specific write_s2cr iommu/arm-smmu-qcom: Read back stream mappings iommu/arm-smmu-qcom: Implement S2CR quirk drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | 90 ++++++++++++++++++++++ drivers/iommu/arm/arm-smmu/arm-smmu.c | 13 +++- drivers/iommu/arm/arm-smmu/arm-smmu.h | 1 + 3 files changed, 101 insertions(+), 3 deletions(-) Tested-by: Steev Klimaszewski