From patchwork Thu Feb 20 10:26:18 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 13983662 Received: from mail-lf1-f41.google.com (mail-lf1-f41.google.com [209.85.167.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B8B201F0E5D for ; Thu, 20 Feb 2025 10:26:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047186; cv=none; b=M96MKsYz9tsSeYhktWN8pE7QeetqeDAfsk1znBwH/3xupJmKlsX2kzrHem2TRuqrbWGWB2iJHiHoq23J9JXTODXyiwFeJmWbTyQwAZbi9zA1D9pmjxcudH70kGeMY9j8M5Teco8XybidiRtugaNnt/rFBJ5gfa0j9hY+i0zWESU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047186; c=relaxed/simple; bh=w10ZfN4br6Ap7llW/HC7sm0zGLP894PWSldkoISRy7I=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=jIN3fI0YBRb5kIHIWobTSuD0otyVLMbX735eBU98EAtWJZM15uvxUFwvRTl9iXFaw7DDRrGWmrrqFY6y8t4BO3QtiAaYVZFOTzVbybWj6BsexYH7q0JTzUH9mufP4PMprr72hNZ+j/2D129IvTtdNdanyTDvodrAFclU5NUOjSk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=mMh3Ven7; arc=none smtp.client-ip=209.85.167.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="mMh3Ven7" Received: by mail-lf1-f41.google.com with SMTP id 2adb3069b0e04-5452ed5b5b2so846481e87.0 for ; Thu, 20 Feb 2025 02:26:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1740047183; x=1740651983; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=BHG5/92JHG16RLprBRzXgLa8hI+3p50zsk7zJC6YSjI=; b=mMh3Ven7JY6+5/SrwKzboHhkJCBEE8ky2Jsgkj4agEYR6xVOiTeUKbRZW0tCCGLHVr 7ehuEoi5djLbifkSHxBQU8DwfCkP6jD0/gHBkJpAyg4d9834TOOXQFkshtwE/6I9QuAK u2ZhFU5qhM5mh+BJVdkiw9l2GlaAsBugnMOQbQk+lNjAe1GrXZngmxvo8wR+BRtGj37R CUMan3rT1GadxJuXkqLXHvfTEr3FVC6LG4Lwos1oadqtIdDo41j+JTHVnd5BD/v32hLW q4/tLAqlddH35G8py8mVYczQ8sIdFFpn9sxaYn/HzVOpGsCLN4UrG2gpQGHDjk6GFid2 UNNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740047183; x=1740651983; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=BHG5/92JHG16RLprBRzXgLa8hI+3p50zsk7zJC6YSjI=; b=Xe+DX606n0NilwWxbF7PMFKk7gXHbLDSCTkFwgtlM3QJnCF0JGS8bYay6bEq3keup7 cYut9b9S1FlRxLVFJ4EYGMC8ulJ1ASA3UksfmX3d4n8Ui/AJ1MUZHBBWMFDTXtrygqRg N8eN4Fb3VEC7JvOGMyoQtr9yTDfm1TtPgQeC7EvEmfF6V2yTl308ZLFQ2kh5yzpF3t6R psCN7nrKSN2da2vJnzTWjfdvmBUMagD1lLmRAj8GUmC38jvmReMUMHDgLv98AnTPU1HO NodXaARr6ezKjs6nJRj5OCnraH0csUJLMIySCfNHurkOCEC4nagCrgOlcfOcyEUjaCld eNig== X-Gm-Message-State: AOJu0Yy5QHMX9LGZMso6deC6fGmAnEFAjlfa+Q6bpSImWyRKoEd3QcuF 6MwDG70SaHmjFI9lRIoIWec4bJMlcK7+pCglp17b2DYlioV28v952aKxDd3aBik= X-Gm-Gg: ASbGncvRFCWzFkqWvalCB8npEVyQlzHy+4JUU9eqlaBH7ud+QT6ZgriywbMgp89ZO44 VZJVPHC1opy3mDlh1NBXzfBsCA2iqpqWS8CM3UA1QwIalnD8xo5qWpE680htSejD3fDBJhrBER9 Xf/wefWe2Yc5W3/tv8mbBoY4LdziFBB5bTI9SIvKb3CCZns0ndW9y1tNjuESvd17gu7amvzXpLU z/xUp/XeTuIRCr9tXRvdzlZbjm4vz0KR+mxNdU/Ng6LYP8i5WEcpB2B5FjUPKpTJl1cvVwafPJ2 MkDK723GDg3WRaip5S6AZUo= X-Google-Smtp-Source: AGHT+IHoB8cGAPCGqCy5Ys3Z/ClpL2nQWVmYQHHBfQ6tZBAycg+fN9nJybcNHcZmN/tcLAhsEfwZzQ== X-Received: by 2002:a05:6512:308d:b0:545:2f09:a3fc with SMTP id 2adb3069b0e04-5452fe26402mr9020270e87.3.1740047182645; Thu, 20 Feb 2025 02:26:22 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-545e939224esm1588052e87.135.2025.02.20.02.26.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Feb 2025 02:26:21 -0800 (PST) From: Dmitry Baryshkov Date: Thu, 20 Feb 2025 12:26:18 +0200 Subject: [PATCH 1/7] drm/msm/dpu: don't overwrite CTL_MERGE_3D_ACTIVE register Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250220-dpu-active-ctl-v1-1-71ca67a564f8@linaro.org> References: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> In-Reply-To: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> To: Rob Clark , Abhinav Kumar , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2119; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=w10ZfN4br6Ap7llW/HC7sm0zGLP894PWSldkoISRy7I=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBntwNKGB2SRGw4F+CCKnh3jnyyk4Z50hcLkYJZL WDHvV06OyuJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ7cDSgAKCRCLPIo+Aiko 1dz1B/9E+EDZuiyFKbu+SOvzfZfWbAo0fN+Z7dtd6euH0aZu3Xj0jlLMVWKP5Gp98xq1o+/fBQw mSvUCdUuEsf4Dx1B8IDw0NCpJq0SpYCgZFjQo7jy3jNGrM0s2dYkT/+ZDRzQQtIu34oiYi0AFLK lvPc8qzUidfSVyfB/LarXGTT/HPKmqn7uFjrDVOqFJeQLV8PNLTjQbjNp+Mc17t3dYlv+hXXnSU mj30TPmuI6n0Y0GFklZBoHHtNHaUZVJXsRHm1q2V8emUk6Y+8cnCQ+PO3xm1qSb7PNSl8Wi0ZIM CXxZrghI2QOhgosSlmSjvUD2JTpAKq91N3VTX1O6/N/HZIfC X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A In case of complex pipelines (e.g. the forthcoming quad-pipe) the DPU might use more that one MERGE_3D block for a single output. Follow the pattern and extend the CTL_MERGE_3D_ACTIVE active register instead of simply writing new value there. Currently at most one MERGE_3D block is being used, so this has no impact on existing targets. Signed-off-by: Dmitry Baryshkov Reviewed-by: Marijn Suijten --- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c index 4893f10d6a5832521808c0f4d8b231c356dbdc41..321a89e6400d2824ebda2c08be5e6943cb0f6b11 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c @@ -548,6 +548,7 @@ static void dpu_hw_ctl_intf_cfg_v1(struct dpu_hw_ctl *ctx, u32 dsc_active = 0; u32 wb_active = 0; u32 mode_sel = 0; + u32 merge_3d_active = 0; /* CTL_TOP[31:28] carries group_id to collate CTL paths * per VM. Explicitly disable it until VM support is @@ -562,6 +563,7 @@ static void dpu_hw_ctl_intf_cfg_v1(struct dpu_hw_ctl *ctx, intf_active = DPU_REG_READ(c, CTL_INTF_ACTIVE); wb_active = DPU_REG_READ(c, CTL_WB_ACTIVE); dsc_active = DPU_REG_READ(c, CTL_DSC_ACTIVE); + merge_3d_active = DPU_REG_READ(c, CTL_MERGE_3D_ACTIVE); if (cfg->intf) intf_active |= BIT(cfg->intf - INTF_0); @@ -572,14 +574,16 @@ static void dpu_hw_ctl_intf_cfg_v1(struct dpu_hw_ctl *ctx, if (cfg->dsc) dsc_active |= cfg->dsc; + if (cfg->merge_3d) + merge_3d_active |= BIT(cfg->merge_3d - MERGE_3D_0); + DPU_REG_WRITE(c, CTL_TOP, mode_sel); DPU_REG_WRITE(c, CTL_INTF_ACTIVE, intf_active); DPU_REG_WRITE(c, CTL_WB_ACTIVE, wb_active); DPU_REG_WRITE(c, CTL_DSC_ACTIVE, dsc_active); if (cfg->merge_3d) - DPU_REG_WRITE(c, CTL_MERGE_3D_ACTIVE, - BIT(cfg->merge_3d - MERGE_3D_0)); + DPU_REG_WRITE(c, CTL_MERGE_3D_ACTIVE, merge_3d_active); if (cfg->cdm) DPU_REG_WRITE(c, CTL_CDM_ACTIVE, cfg->cdm); From patchwork Thu Feb 20 10:26:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 13983663 Received: from mail-lf1-f45.google.com (mail-lf1-f45.google.com [209.85.167.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1AFB21F12FD for ; Thu, 20 Feb 2025 10:26:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047189; cv=none; b=ls3ZiG9+r5m+rRy1KhctQenESO7YqHhu/ziAA8LfeBMmNeIzJ9JWb0lRB3011kcODzoSQ+1PiJ4ntluFUuCKeXCW9qkClGevSVnzB6NfU7sQYKQyJg7hrVGd/OeMB68ae5UdewTH+Dw0JCCTylVVXGb82gagzZ7TBZaeP4ThYaE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047189; c=relaxed/simple; bh=Zeu2WMMg3KSN6/su6MRFquf4B/jwSUnZPPK7KQNFjVE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=V10eoqf/g2YE4FZKzMSfzLduYXs4aEkWDmzRWBMV01tU+nv+AAcxw4B6PWqf3MM+GtxT2zAyAr5iXqdZYBo5/r0hLQ8Na5m17APjB75yGQr+Opbc+d4oHpred774SHttUR8e+Y32Q+GBb6LGxto8XZDFQuEGZ/vo71UcuNnA5LA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=Ceb5KgqF; arc=none smtp.client-ip=209.85.167.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="Ceb5KgqF" Received: by mail-lf1-f45.google.com with SMTP id 2adb3069b0e04-5461f2ca386so707224e87.1 for ; Thu, 20 Feb 2025 02:26:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1740047185; x=1740651985; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=6MXT2UHEqR4mXPV5rukuE4Ox5VYKDfzTrqOVamfQ/v4=; b=Ceb5KgqFgXlEGM9p6lCmsuWIN1nha9/YFH1dHjCRJOKpVyo89ZMEIG6XqrZi4Z9kaV zqei1AL74DGW5GdggzGhuxuubDJ5cDjQTim33ciqs5CCp8FetsVG+YX36k7sIkRBdQSf U4ZKkUniyCkrpnJXtwUUA/K0/711GtAkL0X0llqIS90w3GtN0QY3OovhGkrbfy1ozswk eriV+WrWY6P28x5U5wJnvwBveGJdkpxIIsckvLdwFemntBAAZgdIBYYRhojVOEIEBIXA 90qQ0jt7aVIEg3WZJUkv0Z8cq3yNxlMLIe8HLJBk87tbTJJBnX8w2uuRAmI/Tq/vX2Ri a1ag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740047185; x=1740651985; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6MXT2UHEqR4mXPV5rukuE4Ox5VYKDfzTrqOVamfQ/v4=; b=STauxFhADLIyzP7Uu1cmihSZaEnH2mOTaLn4l1B6jXTAi4VCW2TsHl+AS/ZZXpn3EN nVsQBs8fkYub8WSUqGRovPnJaDnQL2ML+D9HvVlLL4/lmAExBUugiT8TZ3vufxY2ZECu o0vwjxmPlxyxMPnOSyYyZ1tzNf7V6a/EWmyA8+KZl9naX88UP+Pl2a4l/A6svAxl8IN2 xRppHwJfDHGSJn7SAP0CUuGBZlL6OTTpPuXUE6lCQ592Bx3D6O+vyf2OWhlnWBv2qzCu DO5F61P/bleWEq4ycJpgiX8cFAduamDtj8Oj+AUbEa41o6OS+wJx7rN7ObZAJdMyUIhe KqMg== X-Gm-Message-State: AOJu0Yw+H2WYuqLBJLrFk/Y5SiY923LRAZCMQwqidSPzKIzchdT4ZsXm Y2JxuzK2xSgn7oo4czP5/0IGbpy5nP/+X1mU5AhiBu4xSbbVpCCe/2iMDmWQTs9ou3YgZGyTyTO X X-Gm-Gg: ASbGncuXBnw9itckoYFydoC9bPyK3mKfJl8HAiJZONEvP6EJjJcozPWVw9ZphDtXIr0 NZalQzrG6ExItvTjQF9U8KW3MxKEwVyv3UbAqkA4pLvU1Lq0sVZf2aBqupWwbnLNrYaAol0vCAn Q5xgl9LHV92nVHjmhSP/dGuyeeZXETxfvDlSN8/tVI5FIUQ2kG+J0+D8ccPHRa/oRx0LMMvzHjn puXEeyQy+d681wWxftzkrgot6ROntm1/s4VzZoP03pPqlaPsEk2wbU1ivq788ObfO9apkBk/b9B TTg9MsBd5fW8wZpr+vPz3xI= X-Google-Smtp-Source: AGHT+IHVs7/HB47jqAC6EzTTnNTZAfzg+x9KZYaVr4/z6kRTIYCgC/Ny36xPicgL5AjVTPvk7mAqow== X-Received: by 2002:a05:6512:3d8a:b0:545:2ab1:3de with SMTP id 2adb3069b0e04-5452fe3a020mr7735223e87.13.1740047185105; Thu, 20 Feb 2025 02:26:25 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-545e939224esm1588052e87.135.2025.02.20.02.26.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Feb 2025 02:26:23 -0800 (PST) From: Dmitry Baryshkov Date: Thu, 20 Feb 2025 12:26:19 +0200 Subject: [PATCH 2/7] drm/msm/dpu: program master INTF value Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250220-dpu-active-ctl-v1-2-71ca67a564f8@linaro.org> References: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> In-Reply-To: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> To: Rob Clark , Abhinav Kumar , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1992; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=Zeu2WMMg3KSN6/su6MRFquf4B/jwSUnZPPK7KQNFjVE=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBntwNKFKkzsD3IaKYWEHR+cLcNe4qWLzmyk7+Rt Q1BXnwf2LeJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ7cDSgAKCRCLPIo+Aiko 1dnnB/9INNm7rqUorusuSFff9lMPBp5yiIpIzWu28DU9UfuKT/GZSDwpGxHhwpVllxYm6SaoRUA JsIxGieMq8CZxRFUboUzZnWVk4RIFIz1KasecaOaj+u/Wy7r9ZP65ngf8eexv4uVkPGhQudKtNT 61ciN5o1CqshJMBxtf2jjNiLbERRmtQvFYl7zt07KxSfjzUP2Jp029aB/oHcLV7AIbSikxNO5g2 2V5mkBLUTfomKKWU7YN6F6V6NmHllQuGWYBLPiwgxt/JFxxX2CCFol+diApEB9EFMu1KR/wifhT DsTnkQisTC5CZXzpEDK04jKAD2PKgtr1r4VTCo/kHKUtoYlO X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A If several interfaces are being handled through a single CTL, a main ('master') INTF needs to be programmed into a separate register. Write corresponding value into that register. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c | 3 +++ drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h | 2 ++ 2 files changed, 5 insertions(+) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c index 321a89e6400d2824ebda2c08be5e6943cb0f6b11..db36bfa98fc310c1bf35c4817d601ae6cf88d151 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c @@ -582,6 +582,9 @@ static void dpu_hw_ctl_intf_cfg_v1(struct dpu_hw_ctl *ctx, DPU_REG_WRITE(c, CTL_WB_ACTIVE, wb_active); DPU_REG_WRITE(c, CTL_DSC_ACTIVE, dsc_active); + if (cfg->intf_master) + DPU_REG_WRITE(c, CTL_INTF_MASTER, BIT(cfg->intf_master - INTF_0)); + if (cfg->merge_3d) DPU_REG_WRITE(c, CTL_MERGE_3D_ACTIVE, merge_3d_active); diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h index 85c6c835cc8780e6cb66f3a262d9897c91962935..e95989a2fdda6344d0cb9d3036e6ed22a0458675 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h @@ -36,6 +36,7 @@ struct dpu_hw_stage_cfg { /** * struct dpu_hw_intf_cfg :Describes how the DPU writes data to output interface * @intf : Interface id + * @intf_master: Master interface id in the dual pipe topology * @mode_3d: 3d mux configuration * @merge_3d: 3d merge block used * @intf_mode_sel: Interface mode, cmd / vid @@ -45,6 +46,7 @@ struct dpu_hw_stage_cfg { */ struct dpu_hw_intf_cfg { enum dpu_intf intf; + enum dpu_intf intf_master; enum dpu_wb wb; enum dpu_3d_blend_mode mode_3d; enum dpu_merge_3d merge_3d; From patchwork Thu Feb 20 10:26:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 13983664 Received: from mail-lj1-f178.google.com (mail-lj1-f178.google.com [209.85.208.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 827831F12FD for ; Thu, 20 Feb 2025 10:26:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047191; cv=none; b=s+dkV7L3xgs5Dh908qnKgPLl0HLq5svGxzLMDIThqxK6bx3bq7BXqzoGHvi3ly9nTLa+TEAasWD5Q/3ZgowZ42qH8oXHNbPDSPsrz3D4+IKSEJ0V+chV2MzM2px22Pv8L22G2+2Mdtu/LTUdXLlWtbYpCJXvVuQtCLaq9h0equQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047191; c=relaxed/simple; bh=/O+unDh5T1VFusnWXWTP7rs8hDxFqzKuCi3hJ4pCKbA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=AtSv8m1uO3AIKR/SOzAI6hAuYwbVNSWACozGxp4CFFy3BC5OtduTGiiuF/GSQAg0W6Mmz8YNaFICx+JIKG/MF3+VxkF+v2tZEO8XihfJ+S4sX3Y6BvOTT49bZe+Y8XeczjPqwvIvZBIfJpktJth+x99z5CLNqvZOPnlUk4TsaFw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=M0AadUTm; arc=none smtp.client-ip=209.85.208.178 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="M0AadUTm" Received: by mail-lj1-f178.google.com with SMTP id 38308e7fff4ca-30a440effcfso19003521fa.0 for ; Thu, 20 Feb 2025 02:26:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1740047187; x=1740651987; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=wJNAJ9S8ZhpIeOStYgLD52jkOeAB/llU9h9KOXd2yuE=; b=M0AadUTmGmJM6Tgvtk021qwi3oOYtN3aaAX53JsGxJYHvtZiSU/ndvfHcz+41cjdxq g6mdS37cvstXkughG2ulwb29z5ugoNI53GpV098VH60+RkqTrBgyb2tbWuDDKZRxHtd7 GAA526/Px8PkpyGtd62zdjMAKkU0/scpvXb/qE/R4iU3CZLE1W++/sfZb/qjCS3Hc0qn 79H5jW+QSiO8IGUFUb6fAWXOxZQ+iemVwSk1HFlcsMYbogQV8EWf0CUN9MsBu5Lqjwjf WrzfK2IjGDVH7jLzDRHkfkz8m1Pdte8/R1C7e0cUsSf0arybkZoRKeyhUh8gObYqvv1D IAJQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740047187; x=1740651987; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wJNAJ9S8ZhpIeOStYgLD52jkOeAB/llU9h9KOXd2yuE=; b=ies1DOJA/iqZDeiuhnMpWn0o942rrDCiLMtVuW9aWANxZYGQFrEbwTyQ7+vjb2lNv+ nZfhx2nOcBIKMczf3NX4Dupc2rKMgfLF6pQDknxTP2L9WUHP0W0FCWpUWBvxXfp2CHC6 2mOLynnY/Qwt6rk5KT75kLNhh6Hop6QlTo+YDAn/IoJvRCAr6ImazL7V1nEXp0LdRWsh W5fdqmHA6j0/d/HPV/anVrNWJi6s16p4+c2+vKEPMG8iN49qZDfp0ccI62rOzQ6RHztB hHHN6i/XGU2UZdZwsfAuryuXA69mMcJ+KIzRt0G3cSUxfTQtwb6NgM/gokWmERLWzSz9 Z/NQ== X-Gm-Message-State: AOJu0YyoKaOIBgh3Wyh2jyZghJG1sO912xDl28Aw6gg2+EDo5sJmblR9 UC+zYrIkHR1kTuwdVBd8hkfoR+WbbgvB3ra9IilXeBidgoscf5Yo7MS66MzXF3U= X-Gm-Gg: ASbGncvwKCwSQE8zdmBRZ02c9g7VIRpst+rpZKmgjPVezC3EWcTBXFgi5cUFjUApVwk bPh/6BwWqjwUeW+TsSwTqNMRRPnIVcGpZHH9HtWEehnKVDFXM/NywS7KDIJYXTnEqRLEiVPNPbz wxNN/uJxGOU8FCkFJ+kx+zaDiwpmyw8KbyZdWtCd3fWo7COzvZ/IrycdGRuDFzqFfMDE+lDCFfm LFdJVZnr7ok92/76MCMz6p9wD38VsNechXx9WmS3jj3GVMRtXWkTk2Xz2Ry2huS6VEpRWXjKtg6 3698FwnzfEFGhSGSgn7iceE= X-Google-Smtp-Source: AGHT+IF331MiMfKkOmnrNILcorNZpHZK9yLwRpgvYJ7WEviZijKR1lVKHGb4C+1ru/+g/xzWTNOJhg== X-Received: by 2002:a05:6512:2399:b0:546:2109:1efb with SMTP id 2adb3069b0e04-546e4662c70mr1044724e87.11.1740047187568; Thu, 20 Feb 2025 02:26:27 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-545e939224esm1588052e87.135.2025.02.20.02.26.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Feb 2025 02:26:26 -0800 (PST) From: Dmitry Baryshkov Date: Thu, 20 Feb 2025 12:26:20 +0200 Subject: [PATCH 3/7] drm/msm/dpu: pass master interface to CTL configuration Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250220-dpu-active-ctl-v1-3-71ca67a564f8@linaro.org> References: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> In-Reply-To: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> To: Rob Clark , Abhinav Kumar , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1894; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=/O+unDh5T1VFusnWXWTP7rs8hDxFqzKuCi3hJ4pCKbA=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBntwNKBFIT3AwoFKTScXTNMjZQ2C302xc/Ih6ae /0vg1jl0m6JATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ7cDSgAKCRCLPIo+Aiko 1S44B/wIvkjQwHjwie/PsatFKnwZx+EoYi3i/LW0hl9ylAvK2w6DmmfzL+Bmj4+LW93FtBaWvII tP8iTCLrVfaXjq+uWjGpkkQydL4uIwTggZex6YpzVf2VqUBrbJEFDrx8alY+FsZY7qA8WG5yn6p gWQo603hoUZhG/GxzpU9Yd5HC/ubu7x33LFa9EplSqI7Dm6UKWyUXeUaz7NDZC9hgu7pNRM2jJb Si+E5E2Gln050Ey0XAONMApWO8p+x2JtqMef+yI6aqeJfMhK5rjvaizXgvyGGVGKh7U1GtByGwc qp2uKF8QeV0QGDWzBjhDSFAet+8SMpKhy7tBdjtITtGsOYkJ X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A Active controls require setup of the master interface. Pass the selected interface to CTL configuration. Signed-off-by: Dmitry Baryshkov Reviewed-by: Marijn Suijten --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c | 2 ++ drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c index e9bbccc44dad8b391cd51daf902307105b2598fc..d1e16da00529de35cf4e205077c4264bdb70de16 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c @@ -59,6 +59,8 @@ static void _dpu_encoder_phys_cmd_update_intf_cfg( return; intf_cfg.intf = phys_enc->hw_intf->idx; + if (phys_enc->split_role == ENC_ROLE_MASTER) + intf_cfg.intf_master = phys_enc->hw_intf->idx; intf_cfg.intf_mode_sel = DPU_CTL_MODE_SEL_CMD; intf_cfg.stream_sel = cmd_enc->stream_sel; intf_cfg.mode_3d = dpu_encoder_helper_get_3d_blend_mode(phys_enc); diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c index abd6600046cb3a91bf88ca240fd9b9c306b0ea2e..232055473ba55998b79dd2e8c752c129bbffbff4 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c @@ -298,6 +298,8 @@ static void dpu_encoder_phys_vid_setup_timing_engine( if (phys_enc->hw_cdm) intf_cfg.cdm = phys_enc->hw_cdm->idx; intf_cfg.intf = phys_enc->hw_intf->idx; + if (phys_enc->split_role == ENC_ROLE_MASTER) + intf_cfg.intf_master = phys_enc->hw_intf->idx; intf_cfg.intf_mode_sel = DPU_CTL_MODE_SEL_VID; intf_cfg.stream_sel = 0; /* Don't care value for video mode */ intf_cfg.mode_3d = dpu_encoder_helper_get_3d_blend_mode(phys_enc); From patchwork Thu Feb 20 10:26:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 13983665 Received: from mail-lf1-f54.google.com (mail-lf1-f54.google.com [209.85.167.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 163381F2BB5 for ; Thu, 20 Feb 2025 10:26:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047193; cv=none; b=g2hOcsDNhpNnd2Ywkd04X0iOzAO+YEhTbDw39ORleLp3UNZxxWZswBjCJt42jJVB/IJCzDeMkoS+l0J9LJMrtZmd1T6IvBq1ukaIRfMGZq652l3LEtFTJe1zq2DUFWqNSFQCguAxmvax+gqnF7tt778Ls8zXAgSoSCrUbrh62lI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047193; c=relaxed/simple; bh=R+chS185SijcfPYYCgAaRcXeK8VYBg1VE8B3d9ZjF0k=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=lZWWPUK/2rjPqP23e1KA3GE2JOWhSbBHuo8sLVoGPuC9xk3+3vZSruCrMsDAQyMN0sKXve5qhxqlGZxz52ImT6aW251aFQB2I0LFPBwOtNzV6n8/mGJUrKRTFBtZ90jFwiukLQttthC4tyTjRM9anBroP0hBmVtwx1/30XqgBTE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=HhlLcV3k; arc=none smtp.client-ip=209.85.167.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="HhlLcV3k" Received: by mail-lf1-f54.google.com with SMTP id 2adb3069b0e04-5452ed5b5b2so846605e87.0 for ; Thu, 20 Feb 2025 02:26:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1740047190; x=1740651990; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ff7ItJ+SnMHnASEHcZ5O+TpGECb0jLJ30NNOzaJgwmg=; b=HhlLcV3kCqxD9LX7+YGNmUwUgCGkk4JHVzNeC8f0m1qDJS647pxcmEdzXo4bZgOUAk 9c5WjAHFLhEoDbHTEf+ixS0rDc9kcpSM60kzTXIXo7TDVTtLA14bqZBbj1n/2xyntxv8 SInlOwDVpGsE5ilCDBSDb68FKP+bW70Zf5SoYdxZTRKdn1y2Wl8dEbH9HBLlE7tZ0Jfy EsyCRw+FbcgQlsxeYoGO20NsWYZPrMVXHLhksDeIL8aQspGxNpX9gkxVQASxRZZowTM7 g50ofM9SG/FbpC3gBkox12e1Llzjv8wUe33dod8QZwF3Pu/YbeiBIT/0flfUq/7ifre1 BxrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740047190; x=1740651990; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ff7ItJ+SnMHnASEHcZ5O+TpGECb0jLJ30NNOzaJgwmg=; b=VINcMhSN9misbjFWMfyxR4Caf3dja0azAAYQWwmswX+7Nh6QGxTKhrpseU6vGSysVT lMWpoJflmzq7v+dFIpHQgtxkPQikrGae5nV+jbB3FIm6PGOtDWko30+nHnDj8evKZW1+ cfIgD8KYvL1b09O8vvKkIW93mG4V8SKtW4sEd7+vN5oXwjl+1Gb7pQFkOT+FlfHFkGc+ PbPdqkJx3s3JFsO3t8DvUFyv6D+D1YctEm6Fkqi/s15KL5WcQ0Eoz0DYb02Dp48s74CF hzBGNhdwWkPEcWmh3kra+pLpblEkbulRHn57mfR4V+/sE7Bg0Rqdn+hvcBb73DIt+sGc AVPg== X-Gm-Message-State: AOJu0YzBD5oUJAOhrlyIdgVVprrWcMF7N2nS8wfHgZWbYAQ0nq8CHzf5 ZkzS8R0H+6rmfU40fgK+QJEkghOryni6I8Tsta1UEG/MhORY3fQcHdoz55hzik87735igJsNkYV h X-Gm-Gg: ASbGnctdCa//dG+pM46s2FZxySY9l6hfjcsFjgosUBz/Gvep8nlfiSrz0Zo1koJPfHH sNsU4uEWygHW92XTIyRZ1zwdxKySsttGZjXtAfv/clpMjkzl62+KPEOa5JeFGdEL52mVIDsjuTE XKq7AO2xaT1jqSDcldk+mexj9Qv5sBs/y4qxpoBl6A8fw5iRm8c34VWqfchp9X52sljR2AsG4Rh eIkdEbWbqMVgHpBKAYHsqKt/comKrW6ARhLwo3t3bVxv2Cqd1y7lLOzXqUoOdzspCJCZTA+1fz+ QKo3q8pLfMcQpieBEMnOnyY= X-Google-Smtp-Source: AGHT+IHBt9HzRKY8jmkakzOnUvvbEh4NOe+or6nzqbYZMeRyoIBCIJTZbNW9HUfXavUHGy8LrqzxzA== X-Received: by 2002:a19:5f1e:0:b0:546:2ea4:8e72 with SMTP id 2adb3069b0e04-5462ea490bamr2874449e87.49.1740047190016; Thu, 20 Feb 2025 02:26:30 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-545e939224esm1588052e87.135.2025.02.20.02.26.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Feb 2025 02:26:28 -0800 (PST) From: Dmitry Baryshkov Date: Thu, 20 Feb 2025 12:26:21 +0200 Subject: [PATCH 4/7] drm/msm/dpu: use single CTL if it is the only CTL returned by RM Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250220-dpu-active-ctl-v1-4-71ca67a564f8@linaro.org> References: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> In-Reply-To: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> To: Rob Clark , Abhinav Kumar , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1197; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=R+chS185SijcfPYYCgAaRcXeK8VYBg1VE8B3d9ZjF0k=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBntwNKH5HPpczCu9L/5cp+mmYPkPzXuoJvH2zlI /BJSbMIVtaJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ7cDSgAKCRCLPIo+Aiko 1U/bB/oDpQQYxShoHXWOQQeQDRt4B7KsbhHYKFXsqWyzLIMbrhA2+AYfan+s3Yq5pdKzRTf3LyU 0hiFB09nCcmi8MDPcXtCiN+eDDJWkISat3ZWao6vEH81ToCIcb5opY0qewxzHsl2BB6ytR4DrrP tZLETlHLLEHNswnxDMFE3oQuVO18wQdNR8OItn7QnvTFV4vRr2OZly04xb6qfeWXVSaIs2TTu/q n038iCfbHa4xGdJ7qeiIybTB2quagcnpfdvPMe4onA/rgYIOlI3BSXZZtpWIhvX1VokAzA1oZX8 zg4wRffj7liG//1uxiAL25vyvqYRTEGtI3vPaZmZhoWIYRcb X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A On DPU >= 5.0 CTL blocks were reworked in order to support using a single CTL for all outputs. In preparation of reworking the RM code to return single CTL make sure that dpu_encoder can cope with that. Signed-off-by: Dmitry Baryshkov Reviewed-by: Marijn Suijten --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c index 5172ab4dea995a154cd88d05c3842d7425fc34ce..666a755dc74b41b79fa1bb2878339592478e4333 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c @@ -1283,7 +1283,11 @@ static void dpu_encoder_virt_atomic_mode_set(struct drm_encoder *drm_enc, return; } - phys->hw_ctl = i < num_ctl ? to_dpu_hw_ctl(hw_ctl[i]) : NULL; + /* Use first (and only) CTL if active CTLs are supported */ + if (num_ctl == 1) + phys->hw_ctl = to_dpu_hw_ctl(hw_ctl[0]); + else + phys->hw_ctl = i < num_ctl ? to_dpu_hw_ctl(hw_ctl[i]) : NULL; if (!phys->hw_ctl) { DPU_ERROR_ENC(dpu_enc, "no ctl block assigned at idx: %d\n", i); From patchwork Thu Feb 20 10:26:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 13983666 Received: from mail-lf1-f48.google.com (mail-lf1-f48.google.com [209.85.167.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6EC3E1F30C4 for ; Thu, 20 Feb 2025 10:26:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047195; cv=none; b=iXOzybuf78MS24lEUyQTfpatMm7EVjQPnsVBO9bVLW4zeSM5eCtf8Oy3jAGEDbEo7StIqZX/6xs4guNSxNzsdgxneLEklOazLmTbfNn1B61CF6ShY12s8lq7HCGwktEugOxIYPWp2xplvHGDvm5d6AFG2sYAv+EPIl1tOCzsnds= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047195; c=relaxed/simple; bh=Mj6W/g1cQTXrPDSCV2G/UAnCYQZDcnBUJoxZDb1VnZ4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=VLQTxdawLh9qtu0fxoMkFHGfCtjuJMcRdgtoI98JJFmiMNNtuyMRpD41K6Frd1NToEsmmRXFogM3wfcl9x4GLCo3Dsf5Eo1wKGNVEgzV9SsWnASadSbuWm2mRrRmPbBs6UYAYI9wXMubOR4OVu0cifKWU2fVWwvkcYQyejRi9ic= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=Emu/dR3M; arc=none smtp.client-ip=209.85.167.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="Emu/dR3M" Received: by mail-lf1-f48.google.com with SMTP id 2adb3069b0e04-5461b5281bcso739870e87.3 for ; Thu, 20 Feb 2025 02:26:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1740047191; x=1740651991; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=X3V4xBbQpvjplr+11vPrizjbtJxjqV5/lKZ5s7afZXk=; b=Emu/dR3Ms+30bqAlriqNt6uiFlb2cIJEZT465faxUXmi5fifRKF3Uk0yBOZCHllBKt eeqUHdPOtCrZoEfiadbIeeKRXqQ4FcSUpNA7Nm6zbSCvHntOyAbnHEgQ+dVMFHTfGxM1 y01VDML+fOHrTT6ZcZ5kZrj7eaD9MzpVNegVfHYvbjGPmt47koLRkyFH+o2/4UFci0eX 3WBTJMgT1HYnY756eoM3NzSkxfZxxSKXrHw/h96l9g6qRKzfPkr+/BqektBXNZ2sJCCE QfuhI/HTa3zcV+EjycEe0j69i04fb9uGqctJ33yN5S03GGMcBX5t7UmO6o6YMQx8OLcw By1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740047192; x=1740651992; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=X3V4xBbQpvjplr+11vPrizjbtJxjqV5/lKZ5s7afZXk=; b=UWT2ZNq/mmn+ZGLT3hT6jiI533XGJbGBPZjm6S6F1lHu92pod/hvjyHtnPXmkyJsVe 0siwh50r84sEtB/z057SqbWWzVC4kXUobCErmLZmoK4CifEB2/TwOVSajXuei92s3vpZ M7QBHeLR79JtcVCW0vAGBF965yju7XKuNwf/wo/aNp73kYOyygkgXn1VSFj07L5ctIEA YEx1NsRAdhBWr9Li82xeGbfIRdZIa8ZY3fNxrHqHWzQYOF2vFeC5Rl6VW/3mhunb09c0 MrTTZgTvSvGJZcEdczziBSqwWD5Wx+z7q5GRt7I+NeMOnEqV4aCPPKT0Kk/v+DMT2Wc5 3p7A== X-Gm-Message-State: AOJu0YxTOtGncD6+IJkgmbLCcEqmCa2y137xvxALNveisV2FkBXApkne e7SNApsfRECDyTTrmv6mTkA5+uMA4QyatyaBSxYwqVZs7pAY1AP60puG60T4w5A= X-Gm-Gg: ASbGncsgEwbCvgvkbGEE44MR0cyImaQGBJe5q4TTzbSz6Jm1vnUB+YAByrPtDDuKKvI ogxQQ9omq6ai7uHm4FyZ8eMV6D8DPas97VTqOy2GE2Vyq+UKHqpVYQYUE4XBp6nlOPCe4OReSQp Pybm8ox7VLsm+nJ+ueUjfoID+F16KvImpX1u9QLJdlldzYOeIxoOR2YbguOk48HnVeQ1pTFt1/3 RnqB0n6GpDjCQbn2wJHDstqkbLYgrgsO9oJI46M3VHRW0GzM2dzVzQAZnTgnk4+C6NMIe20/v+J eHqqnKrR9e4lIz40b8dkLxo= X-Google-Smtp-Source: AGHT+IFT7l/AtVtBLArk2SRlJ/wJq5MyR0YALvIDoLeckr+vIWmad/Qo311RAVJkfTcP2k498cUn/A== X-Received: by 2002:a05:6512:eaa:b0:545:c9d:ef26 with SMTP id 2adb3069b0e04-5452fea5da8mr7575910e87.46.1740047191589; Thu, 20 Feb 2025 02:26:31 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-545e939224esm1588052e87.135.2025.02.20.02.26.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Feb 2025 02:26:31 -0800 (PST) From: Dmitry Baryshkov Date: Thu, 20 Feb 2025 12:26:22 +0200 Subject: [PATCH 5/7] drm/msm/dpu: don't select single flush for active CTL blocks Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250220-dpu-active-ctl-v1-5-71ca67a564f8@linaro.org> References: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> In-Reply-To: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> To: Rob Clark , Abhinav Kumar , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1072; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=Mj6W/g1cQTXrPDSCV2G/UAnCYQZDcnBUJoxZDb1VnZ4=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBntwNLSoDCJhBaYmL2ldFx0C1L91FbiV3nkagNu zV9tG1YFlWJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ7cDSwAKCRCLPIo+Aiko 1Xl+CACrEnvEy3oMgM9VlWjdwvKg0hXcZYrjUorlyeRUYERUk9dlZKLpH1zwax5tK0rUBc6Eq47 A3Jpti5ik0g9bLxSisjpAwlNEgK+js56CDJ/++RgzCxWtZNligajW7lTnYDiWekbR1DngK1HBLU RZtrlTc9BE62ycVDxN9iwpfzyZKNi7Odk6UAgnA1RPb9l/WBnh5bAqytMKywl70PCuDC7N6XkvH kKQhlVaF5U+ZYU8lYwds1aI8QQlXAQ6JtpeoubML+TUyeONzeyyJICJcLrS6Dqhec64HUfPnuGi TPufr0KlKKM4eweQwpOnN2F7QE5k4Qt3bfsUPj5sfEzj9JkU X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A In case of ACTIVE CTLs, a single CTL is being used for flushing all INTF blocks. Don't skip programming the CTL on those targets. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c index 232055473ba55998b79dd2e8c752c129bbffbff4..8a618841e3ea89acfe4a42d48319a6c54a1b3495 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c @@ -374,7 +374,8 @@ static void dpu_encoder_phys_vid_underrun_irq(void *arg) static bool dpu_encoder_phys_vid_needs_single_flush( struct dpu_encoder_phys *phys_enc) { - return phys_enc->split_role != ENC_ROLE_SOLO; + return !(phys_enc->hw_ctl->caps->features & BIT(DPU_CTL_ACTIVE_CFG)) && + phys_enc->split_role != ENC_ROLE_SOLO; } static void dpu_encoder_phys_vid_atomic_mode_set( From patchwork Thu Feb 20 10:26:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 13983667 Received: from mail-lf1-f53.google.com (mail-lf1-f53.google.com [209.85.167.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 43CC11F3BA9 for ; Thu, 20 Feb 2025 10:26:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047198; cv=none; b=sDAx6gvMH6/J5aSG+mtm21Q/wFIVT3oFbj6u02V6x/IBhYA59t8A+63mnBjn9cw4dByZPaRgvqqEgfBoBcqkOF8fOQxwmNkzAz3S/X4RHQnbOgUGCYxGh0sWIBLJtX8Iql4WGbGvTz1NKwW+CePp/fVvMgPwQ5iCz0GmjWLDfVk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047198; c=relaxed/simple; bh=bTtPeLTR7bIGAjAGWZZbYSPB+kORXsbXpocudthnDVU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ZJOWkXgqDJNvikdHWqQfxUz3RILAeEnidmqNvZT58fMSZnmRjakpuIm7n4h8IXP/JABSN5mZjd64DbCEHf2XrmHyIFtdOC1unY6nM+/zDYUMJz8DWoU1xOXiND4JMQKcKkw/GBko0mlqU3lLg19y356NvAGK4noyu0dpCbqVUG0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=B/MAMYcm; arc=none smtp.client-ip=209.85.167.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="B/MAMYcm" Received: by mail-lf1-f53.google.com with SMTP id 2adb3069b0e04-5452d9d0d47so663458e87.1 for ; Thu, 20 Feb 2025 02:26:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1740047193; x=1740651993; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=XcgN3KcZQIKunyhp5MN5k0ww8zI0POS9d4nm1tGHVCo=; b=B/MAMYcmOMuUNs90y1LQc71PStCPU7RIt1KryJvVN+j24+d52Cbwp7OshD1Fcio95Y XQp+wXeCkwU8Tw+8HM3oWtjAakmZuglF/mr8qkKhAnyHTzcN7hGhVXRhcjbAwlpLzBGy nHZuiQv1rnIZO5prwl+BnQBzKFWdN/AWT4pGkKD6Ug07P+pK5FYxihEULuFb72FU98sw NT2WDi5xBzm4cjQqlhZgGVkI23j83ib0AE9VaQfa2s6gXJlW9c5OijyA8r29RAjIikml 78GOhJrtF3nu/laGePuNkP2B/mDYXjCrbTTBV4ik9D+d5QQyWwV7u6ZtzcmDK3V6T9kx 7FjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740047193; x=1740651993; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XcgN3KcZQIKunyhp5MN5k0ww8zI0POS9d4nm1tGHVCo=; b=DRrrnmRxHiu/uo2B/9BDb73mdQVzUMRCn2nmf3S0rw5234VcV6QNrmJnFuHgvB3F/1 W/CpMjFoJO3W7X7B26Kyb5Od2ikrVESD9LwivMKrxYrP/gS/oNIsJIz/tNa4cjCAZWCf 4d+UoUf2PKTaNa0gBNX1v4NbeCrfVetFl5ZZ8LmkywBtp37A+OGSHdP/AaYApFR47xf1 1eQuyeEvZlSNH2gpoh9chHeQTjsJ5a4Fb1m3CNA/ixcgK2S4ipmDs//FeHCgUJw/FuvN JaNUttLeWZU5JMU1iDkXxfjVsRPPwDzCdNlNfTSSwm1Nd6YUAe+eWh2lKL0TAjuiLUKc MqTw== X-Gm-Message-State: AOJu0Yxp203sJD4vOTYESMO6uPFtIEvaEsXC3oUz1j59T1+ysV0UIkUY EJ+aJzzgSA3Sil/BtuBi3HwC9KL9RHG52NE4Ij4rgsfCqyGwvLX+SbPfc9Guh/E= X-Gm-Gg: ASbGncscnBEwhIZgtKwhLMqblh/wQeCBHnwbaUx5py83sKsrpJaJh9ZTwcF614z3aZA /AQuZoZE+QUaKu1w22v7hR+fYDtYmUsG8q7BPXHr3+7KkGn27B6YzL5pu5vK9PtFByPDZkjHhkv k7eT0/ZS12yNXVsQC8JvKnm0KcYm1mmz2IViR3tygl0JtqmE6BqYGxYHGtiTOb7pMRo0jNXYZEJ /kuBGeQUx0LhIs4TVo6+QttNSqVTqeH7Bd/yQgGFE7p45+upCLZMfF9VW3px1a7z9niEVBRannD m0t1J36qawmlTeIkbQWxyXw= X-Google-Smtp-Source: AGHT+IEM9+GwpoyKZl6DXyfHoUFNWFP013z/rJDJY6azNQJu3BsrfRzXnCOVs/HY3FvHdFiR+OFW2A== X-Received: by 2002:a05:6512:2396:b0:545:1d25:460d with SMTP id 2adb3069b0e04-5462eee6586mr3144030e87.12.1740047193190; Thu, 20 Feb 2025 02:26:33 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-545e939224esm1588052e87.135.2025.02.20.02.26.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Feb 2025 02:26:31 -0800 (PST) From: Dmitry Baryshkov Date: Thu, 20 Feb 2025 12:26:23 +0200 Subject: [PATCH 6/7] drm/msm/dpu: allocate single CTL for DPU >= 5.0 Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250220-dpu-active-ctl-v1-6-71ca67a564f8@linaro.org> References: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> In-Reply-To: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> To: Rob Clark , Abhinav Kumar , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2889; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=bTtPeLTR7bIGAjAGWZZbYSPB+kORXsbXpocudthnDVU=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBntwNLcO4pIN+ypbPAk3kZc9xkCx3N/uJ1cgUA4 9Jx+DG4DTuJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ7cDSwAKCRCLPIo+Aiko 1b4sCACwhvMnemZlynSEuUk5qg5JVNllVcUdExghA2X1IiBLMjPPRqFLSOs40D2uxyzV5xc8ZkN DV+h0qhdC20PUTM7ZUtl/Ngb6gvmA10XOTFlli0ITCbOuItVfJrj8QopMwsQasQ4R32Xg6jXOnA jy+HXtzpD4feH+5hz+PiR8v+ZOe/epUccGfXOIx0rEJ+tD0RT1htDMg34FAlmwkPKoG+pBz4E3N KpX15ArRQDd5zAZrsb+sKYoVcbdWkU8wbvOzcc5dudT95O+yhmYEThoIIShE6NwdvgibQL0U/8k MBuoevG8EUDJ1+wSsL3VJkxGBSalC90b4I6Bo9QB5AupStG/ X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A Unlike previous generation, since DPU 5.0 it is possible to use just one CTL to handle all INTF and WB blocks for a single output. And one has to use single CTL to support bonded DSI config. Allocate single CTL for these DPU versions. Signed-off-by: Dmitry Baryshkov Reviewed-by: Marijn Suijten --- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c | 17 +++++++++++++---- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h | 2 ++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c index 5baf9df702b84b74ba00e703ad3cc12afb0e94a4..4dbc9bc7eb4f151f83055220665ee5fd238ae7ba 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c @@ -53,6 +53,8 @@ int dpu_rm_init(struct drm_device *dev, /* Clear, setup lists */ memset(rm, 0, sizeof(*rm)); + rm->has_legacy_ctls = (cat->mdss_ver->core_major_ver < 5); + /* Interrogate HW catalog and create tracking items for hw blocks */ for (i = 0; i < cat->mixer_count; i++) { struct dpu_hw_mixer *hw; @@ -381,10 +383,16 @@ static int _dpu_rm_reserve_ctls( int i = 0, j, num_ctls; bool needs_split_display; - /* each hw_intf needs its own hw_ctrl to program its control path */ - num_ctls = top->num_intf; + if (rm->has_legacy_ctls) { + /* each hw_intf needs its own hw_ctrl to program its control path */ + num_ctls = top->num_intf; - needs_split_display = _dpu_rm_needs_split_display(top); + needs_split_display = _dpu_rm_needs_split_display(top); + } else { + /* use single CTL */ + num_ctls = 1; + needs_split_display = false; + } for (j = 0; j < ARRAY_SIZE(rm->ctl_blks); j++) { const struct dpu_hw_ctl *ctl; @@ -402,7 +410,8 @@ static int _dpu_rm_reserve_ctls( DPU_DEBUG("ctl %d caps 0x%lX\n", j + CTL_0, features); - if (needs_split_display != has_split_display) + if (rm->has_legacy_ctls && + needs_split_display != has_split_display) continue; ctl_idx[i] = j; diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h b/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h index 99bd594ee0d1995eca5a1f661b15e24fdf6acf39..130f753c36338544e84a305b266c3b47fa028d84 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h @@ -24,6 +24,7 @@ struct dpu_global_state; * @dspp_blks: array of dspp hardware resources * @hw_sspp: array of sspp hardware resources * @cdm_blk: cdm hardware resource + * @has_legacy_ctls: DPU uses pre-ACTIVE CTL blocks. */ struct dpu_rm { struct dpu_hw_blk *pingpong_blks[PINGPONG_MAX - PINGPONG_0]; @@ -37,6 +38,7 @@ struct dpu_rm { struct dpu_hw_blk *dsc_blks[DSC_MAX - DSC_0]; struct dpu_hw_sspp *hw_sspp[SSPP_MAX - SSPP_NONE]; struct dpu_hw_blk *cdm_blk; + bool has_legacy_ctls; }; struct dpu_rm_sspp_requirements { From patchwork Thu Feb 20 10:26:24 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 13983668 Received: from mail-lf1-f47.google.com (mail-lf1-f47.google.com [209.85.167.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E034B1F4169 for ; Thu, 20 Feb 2025 10:26:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047200; cv=none; b=tSQfyxggGy3r3XjAazLGcuq5d2kRaZGRDmabB/eZtMUTjkjNTqF47etTdy2HN07539/Jc0pJNXnf5qxXJMoqOWXojLMrFuXOz7sGFRFgloJfIFGY6URXRBFs2k3/3ZGL84IaYn6wAd6GRYkeoOtuiKoing5IE3A2AP3hS5mz3So= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740047200; c=relaxed/simple; bh=F2+KlNEiE24AXgRgmBMHY9zrf48emWjOElv//W0lysM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=stqjklDYZdm6GExVmCaEhCDalNaRVhmf5k4QunM1VdUurf13AyRs2phMbui9z96iG19D2cGkTAgcCvHaj4EHRC9ebL38B96oaijMMeMG+m3Lb7cGrpSd5+flX2B75HGYrNIeG8y4qYMUVWr+dzlJGlZx8YimCglII2s1MzG8f3I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=R7uAjER9; arc=none smtp.client-ip=209.85.167.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="R7uAjER9" Received: by mail-lf1-f47.google.com with SMTP id 2adb3069b0e04-5452d9d0d47so663497e87.1 for ; Thu, 20 Feb 2025 02:26:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1740047196; x=1740651996; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=JXV+41aWmBax3Mr2Ai2cx6npG1dbHSfJC49MTHURMEc=; b=R7uAjER9css7NM1k7CYjwL4XxNO3k4camje610Wf4BoZLGFSiDdN1MntZXNbFP9e2z 0p8RLDr+FR646n72/s1IkDXD0Y0IliDAHws8EfT7WiT1iXBcwxBn0keQpKRCV2ttNfDa rbRkixV1Isq39i+jQqDy5tLIWhBM9ccpB3nGfp01EWAtGgyUPECy592j7u6nLVeh1HgB Lab9G/hRKEMzGEKS8FT9sANUWxn0J2qDNXabMFDs/fcefmn5tTmNlB2IW6smk/w62Tc3 BbBjlOHX+pWANu7WQjiO2kbC0yMAcHxopqPwHVD7NxVVh8wrzLWxg3Y3JV4A04lJN2sf s0Kw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740047196; x=1740651996; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JXV+41aWmBax3Mr2Ai2cx6npG1dbHSfJC49MTHURMEc=; b=iyKUkm3NAmBKppyFi8tXQ9TRkbSkQeReIiA4UAVOaym/dVMMW8WAonZdJwx8u0Lkhq R0ELg/d5hBwNJmiO2gtdpjeKsfzUnKGdZWDLqzdJ5CUFoZmBWAncive+aBpBJRUt7zfA 8pYdkXWN7RHuUiG5wetqqH9TcI9lcEMsg5jdw+MEzCYNdTXk+eREKQg71qPExGtPSDUa QHZh0RKCxPhy8rFceUic5cLljj9bgUlz583ssELvyzNJT4y4zvNPMC25DPEkQeza0nYG 24WcJzz8lnbGCblTwduTXKpGRXvI3HkXqnYnIqOMGVL9DfL3Q2MKIqxyFQwGEAzY1L1m NUNQ== X-Gm-Message-State: AOJu0YwCEjFuuBfWnZGT+4bjaSPFAB3yggyaUmRGoMuobK9ZE2/SlUKS yZDYf8pN6RCT+zSSsxdKFe5Y/fyD4GPtlzOcHv1ZJGH1utrbmQCGkY0wh84fMcQ= X-Gm-Gg: ASbGncuKqUyWt+GxpxI3tt0x/6GDvj2is0AZupaFmaV9DgDjkIwAm/8rmGzNu8CnIsV jjDLsC8h2cWcKdUMd0NXSGewHJl8qTWPTmxFafhp007pBAh7OKG+b/Y9IBoA8lWdRwGecjeOXc1 1nAqwC6hLvbVbGd71AvXbhNR5u9b2AbXuEM1jcjI5mCiV50g8n9UOhmivrh2SDJRj/OOoDhczYp cv4pwEJtJ/HzidZkhJdlkWrQtlH5uPY4DQXExJbMtiN7g9mh6Es7GalZGtsJH1uS1SSJAtwj+RP fjwOwTlwvRMZ8ipwp4vPlKs= X-Google-Smtp-Source: AGHT+IH1rFaCfEon5U0XhPyy5VxFnS+y1/5rsc5dcY7BoKqss96U6i4/V5aafzo8e1npNsdPsk7lqQ== X-Received: by 2002:a05:6512:2396:b0:545:1d25:460d with SMTP id 2adb3069b0e04-5462eee6586mr3144085e87.12.1740047195732; Thu, 20 Feb 2025 02:26:35 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-545e939224esm1588052e87.135.2025.02.20.02.26.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Feb 2025 02:26:34 -0800 (PST) From: Dmitry Baryshkov Date: Thu, 20 Feb 2025 12:26:24 +0200 Subject: [PATCH 7/7] drm/msm/dpu: remove DPU_CTL_SPLIT_DISPLAY from CTL blocks on DPU >= 5.0 Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250220-dpu-active-ctl-v1-7-71ca67a564f8@linaro.org> References: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> In-Reply-To: <20250220-dpu-active-ctl-v1-0-71ca67a564f8@linaro.org> To: Rob Clark , Abhinav Kumar , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=12609; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=F2+KlNEiE24AXgRgmBMHY9zrf48emWjOElv//W0lysM=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBntwNLY6lcqUHb9VOhvlnyHhq7KTQVsN2cQo1S2 6ZMMxrJR5aJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ7cDSwAKCRCLPIo+Aiko 1XmaB/9McVYa64+vUEsjSllSkio5eio12GIRpFYhuhFW/j57FCbiIi6Qu6DoqwjNecSMZJCMLX4 Yzi07BDDGIOzl8GXyIv+ajZ3vHRcykyJ80lyfgCm53txKwPeBYIy5tvkBMKWE9/OefkwKfRBAfJ traLdibowCauzVnFjy4P2MQGB6oGz6dleq78A1BT0/A9hpCG/QZ2t3M40VCGnaGIkk1Y0JiKO4m FR0uAoFI+mXiSQpT2RG92X4Iz++I1mRehCev8bLqb5TXH8pBtrOiobQfLx9vpGrCUF5Ob5VGrLs dOJvB9ChOt7vJJ+HopvNaRnoYNAh+QbhwsVSYQQYsKouBdw4 X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A Since DPU 5.0 CTL blocks do not require DPU_CTL_SPLIT_DISPLAY, as single CTL is used for both interfaces. As both RM and encoder now handle active CTLs, drop that feature bit. Signed-off-by: Dmitry Baryshkov Reviewed-by: Marijn Suijten --- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_10_0_sm8650.h | 5 ++--- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_0_sm8150.h | 5 ++--- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_1_sc8180x.h | 4 ++-- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_2_sm7150.h | 4 ++-- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_0_sm8250.h | 5 ++--- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_0_sm8350.h | 5 ++--- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h | 5 ++--- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_1_sm8450.h | 5 ++--- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_4_sa8775p.h | 5 ++--- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_0_sm8550.h | 5 ++--- drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_2_x1e80100.h | 5 ++--- 11 files changed, 22 insertions(+), 31 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_10_0_sm8650.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_10_0_sm8650.h index bcb39807fe61e231d6e318d8729ed86f213fb06a..a705e3e761d9a578777cd03011e90df8002127a6 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_10_0_sm8650.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_10_0_sm8650.h @@ -27,17 +27,16 @@ static const struct dpu_mdp_cfg sm8650_mdp = { }, }; -/* FIXME: get rid of DPU_CTL_SPLIT_DISPLAY in favour of proper ACTIVE_CTL support */ static const struct dpu_ctl_cfg sm8650_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x15000, .len = 0x1000, - .features = CTL_SM8550_MASK | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = CTL_SM8550_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x16000, .len = 0x1000, - .features = CTL_SM8550_MASK | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = CTL_SM8550_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2, diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_0_sm8150.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_0_sm8150.h index 421afacb7248039abd9fb66bcb73b756ae0d640a..bf4ff275bba4320e70acf516cb784b1bdd0cf966 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_0_sm8150.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_0_sm8150.h @@ -37,17 +37,16 @@ static const struct dpu_mdp_cfg sm8150_mdp = { }, }; -/* FIXME: get rid of DPU_CTL_SPLIT_DISPLAY in favour of proper ACTIVE_CTL support */ static const struct dpu_ctl_cfg sm8150_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x1000, .len = 0x1e0, - .features = BIT(DPU_CTL_ACTIVE_CFG) | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = BIT(DPU_CTL_ACTIVE_CFG), .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x1200, .len = 0x1e0, - .features = BIT(DPU_CTL_ACTIVE_CFG) | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = BIT(DPU_CTL_ACTIVE_CFG), .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2, diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_1_sc8180x.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_1_sc8180x.h index 641023b102bf59352546f0782d9264986367de78..7ec4fd702fd2f37e2e6a5758154d14967ba11504 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_1_sc8180x.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_1_sc8180x.h @@ -41,12 +41,12 @@ static const struct dpu_ctl_cfg sc8180x_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x1000, .len = 0x1e0, - .features = BIT(DPU_CTL_ACTIVE_CFG) | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = BIT(DPU_CTL_ACTIVE_CFG), .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x1200, .len = 0x1e0, - .features = BIT(DPU_CTL_ACTIVE_CFG) | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = BIT(DPU_CTL_ACTIVE_CFG), .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2, diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_2_sm7150.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_2_sm7150.h index 2fe674d1e05988f39f66a01fedee96113437ea65..0d102888741a0c61ac547ec568e44c1e91350835 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_2_sm7150.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_2_sm7150.h @@ -38,12 +38,12 @@ static const struct dpu_ctl_cfg sm7150_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x1000, .len = 0x1e0, - .features = BIT(DPU_CTL_ACTIVE_CFG) | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = BIT(DPU_CTL_ACTIVE_CFG), .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x1200, .len = 0x1e0, - .features = BIT(DPU_CTL_ACTIVE_CFG) | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = BIT(DPU_CTL_ACTIVE_CFG), .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2, diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_0_sm8250.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_0_sm8250.h index e8916ae826a6daf30eb08de53521dae89c07636c..3da26970426f9672c34f213064cdb8eff8c18da5 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_0_sm8250.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_0_sm8250.h @@ -35,17 +35,16 @@ static const struct dpu_mdp_cfg sm8250_mdp = { }, }; -/* FIXME: get rid of DPU_CTL_SPLIT_DISPLAY in favour of proper ACTIVE_CTL support */ static const struct dpu_ctl_cfg sm8250_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x1000, .len = 0x1e0, - .features = BIT(DPU_CTL_ACTIVE_CFG) | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = BIT(DPU_CTL_ACTIVE_CFG), .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x1200, .len = 0x1e0, - .features = BIT(DPU_CTL_ACTIVE_CFG) | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = BIT(DPU_CTL_ACTIVE_CFG), .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2, diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_0_sm8350.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_0_sm8350.h index f7c08e89c882038aa658955ca1202bda3d928e80..16fbfea01e3272229c817db480b86c1a715d5c4a 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_0_sm8350.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_0_sm8350.h @@ -35,17 +35,16 @@ static const struct dpu_mdp_cfg sm8350_mdp = { }, }; -/* FIXME: get rid of DPU_CTL_SPLIT_DISPLAY in favour of proper ACTIVE_CTL support */ static const struct dpu_ctl_cfg sm8350_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x15000, .len = 0x1e8, - .features = BIT(DPU_CTL_SPLIT_DISPLAY) | CTL_SC7280_MASK, + .features = CTL_SC7280_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x16000, .len = 0x1e8, - .features = BIT(DPU_CTL_SPLIT_DISPLAY) | CTL_SC7280_MASK, + .features = CTL_SC7280_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2, diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h index 0d143e390eca964b1c81f835d0904a2079b0b941..e6f2a8665ea2598ca5a813158ba1cdd9f491a41f 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h @@ -35,17 +35,16 @@ static const struct dpu_mdp_cfg sc8280xp_mdp = { }, }; -/* FIXME: get rid of DPU_CTL_SPLIT_DISPLAY in favour of proper ACTIVE_CTL support */ static const struct dpu_ctl_cfg sc8280xp_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x15000, .len = 0x204, - .features = BIT(DPU_CTL_SPLIT_DISPLAY) | CTL_SC7280_MASK, + .features = CTL_SC7280_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x16000, .len = 0x204, - .features = BIT(DPU_CTL_SPLIT_DISPLAY) | CTL_SC7280_MASK, + .features = CTL_SC7280_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2, diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_1_sm8450.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_1_sm8450.h index 08742472f9cc812fbaf8f842ff7bd78f597e2b8d..bac75783063fd5588bc1cc19cb79f11cb0431bb8 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_1_sm8450.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_1_sm8450.h @@ -36,17 +36,16 @@ static const struct dpu_mdp_cfg sm8450_mdp = { }, }; -/* FIXME: get rid of DPU_CTL_SPLIT_DISPLAY in favour of proper ACTIVE_CTL support */ static const struct dpu_ctl_cfg sm8450_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x15000, .len = 0x204, - .features = BIT(DPU_CTL_SPLIT_DISPLAY) | CTL_SC7280_MASK, + .features = CTL_SC7280_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x16000, .len = 0x204, - .features = BIT(DPU_CTL_SPLIT_DISPLAY) | CTL_SC7280_MASK, + .features = CTL_SC7280_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2, diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_4_sa8775p.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_4_sa8775p.h index 76ec72a323781363d37b62fec752ea1232bbd75b..2b36c438bc8a22e2650f1d546d0259f8c6e747b4 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_4_sa8775p.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_4_sa8775p.h @@ -35,17 +35,16 @@ static const struct dpu_mdp_cfg sa8775p_mdp = { }, }; -/* FIXME: get rid of DPU_CTL_SPLIT_DISPLAY in favour of proper ACTIVE_CTL support */ static const struct dpu_ctl_cfg sa8775p_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x15000, .len = 0x204, - .features = BIT(DPU_CTL_SPLIT_DISPLAY) | CTL_SC7280_MASK, + .features = CTL_SC7280_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x16000, .len = 0x204, - .features = BIT(DPU_CTL_SPLIT_DISPLAY) | CTL_SC7280_MASK, + .features = CTL_SC7280_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2, diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_0_sm8550.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_0_sm8550.h index 4d3787fceb72fb3641057a7ea04ae6503b671042..5e0d2e8aabbaa406e332024676c5eb8205fec177 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_0_sm8550.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_0_sm8550.h @@ -27,17 +27,16 @@ static const struct dpu_mdp_cfg sm8550_mdp = { }, }; -/* FIXME: get rid of DPU_CTL_SPLIT_DISPLAY in favour of proper ACTIVE_CTL support */ static const struct dpu_ctl_cfg sm8550_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x15000, .len = 0x290, - .features = CTL_SM8550_MASK | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = CTL_SM8550_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x16000, .len = 0x290, - .features = CTL_SM8550_MASK | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = CTL_SM8550_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2, diff --git a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_2_x1e80100.h b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_2_x1e80100.h index 6b112e3d17da6a4423851525262b66aa6c8622e3..a500a38ce07b84c2c9ad51aaf5847ee0bbcc72a5 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_2_x1e80100.h +++ b/drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_2_x1e80100.h @@ -26,17 +26,16 @@ static const struct dpu_mdp_cfg x1e80100_mdp = { }, }; -/* FIXME: get rid of DPU_CTL_SPLIT_DISPLAY in favour of proper ACTIVE_CTL support */ static const struct dpu_ctl_cfg x1e80100_ctl[] = { { .name = "ctl_0", .id = CTL_0, .base = 0x15000, .len = 0x290, - .features = CTL_SM8550_MASK | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = CTL_SM8550_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 9), }, { .name = "ctl_1", .id = CTL_1, .base = 0x16000, .len = 0x290, - .features = CTL_SM8550_MASK | BIT(DPU_CTL_SPLIT_DISPLAY), + .features = CTL_SM8550_MASK, .intr_start = DPU_IRQ_IDX(MDP_SSPP_TOP0_INTR2, 10), }, { .name = "ctl_2", .id = CTL_2,