From nobody Tue Dec 2 02:49:44 2025 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 24FEE35E52C for ; Tue, 18 Nov 2025 14:51:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763477509; cv=none; b=o4XHzvNm55ln8NKOh6rDrT2yOiAKyN6QdQmwBBliUTFabvDxIDuXnf+O39YXjWL7SRHbdwwV5LHmyQH/wXhJkwYI36Eh8cL/rQGlw+nduVKKEF4gEoFTFuMIXFZn2YnZ/jPq3yGJ/Ew3QBwj8t3Ft9ef137lk4B3kXgDul/ttEM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763477509; c=relaxed/simple; bh=sY/SEDXrsZr0BmS/LMw9TXkPSauhq7bXwHnS9koPDnM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=QOgUn3et7aIpRLyRE4WbubucKgKnurKZwGPUeZCavRLZ1tYuHUHQhYqaCoEFLNTRuLHa60ShaNTowMUVWAzGGSkN3XoC8uI9FnnzK7L3Mu7uT1lkR1il/6rRxfKoo2Aoyr3xdFnehXU/SOoncNhFaV/zAii5XWH040WbQ9FyGis= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=F9T/R6X1; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=f6bv6AyM; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="F9T/R6X1"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="f6bv6AyM" Received: from pps.filterd (m0279866.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5AI9i0Qa028363 for ; Tue, 18 Nov 2025 14:51:47 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= CIlNewz5huhSylfx9wKBYS8mfG6SbdE2jYpeBcLcGnc=; b=F9T/R6X1DM/FfEx2 W6Q06lUe2eY/j3Kwv2bhNjtM7SpFU8nGLfav8dvxBDqvTRkmwgAczc7Y1vr6KA+6 t30snWDxIYtLf1a2j2O/D1hjVP8bFp/frQxU/gnXlfJWWYrhsEa41WjprDQlr9nV 4PUqHFkFmuepL5cD0tXw84B50kTiQuDWu5YKUlTMJhuy2Ko1doYvRgZn6wLwaNnH 37iiNsLYX7ubSgLtSC3xFFd8gCzPbofF8HHZWw6jJ5jCKvnmxJ1bgcKF2Mj1IHgw nsJ/iwF3nXJymYESWanhK5jhqdw4IRrdBh0ArhHYMCPLl2ky9iQH0l2uKH1LN6fz zI+msw== Received: from mail-qt1-f200.google.com (mail-qt1-f200.google.com [209.85.160.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ag77t3ef7-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 18 Nov 2025 14:51:47 +0000 (GMT) Received: by mail-qt1-f200.google.com with SMTP id d75a77b69052e-4ee0193a239so36635231cf.0 for ; Tue, 18 Nov 2025 06:51:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1763477506; x=1764082306; 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=CIlNewz5huhSylfx9wKBYS8mfG6SbdE2jYpeBcLcGnc=; b=f6bv6AyMHU1HgL5xU2hovUp+UEcfrJ47yooef2DROPnJgiizMi9t9jY7vGtA5oZnSv 0wrKNf3N9KWwn8dPgg7viTwA//jF3wnzdnJNV1mOC0G5trYlApUy/9lwwwuTM0oLe/hm BQ7FUNF8b6FltUwbWs1XEW0ZfoQFXQ/4S6QENtdSWXBCh7MaFMaDC6h8JDDze8cnavqA maZ3WQOgQID18JOB0ZzjWS827hBftSeun09rtknp/XBYDuvch9bMd8kjueicyHLnXaUx sK11kjPIrKFfC7kqCaglJEgy+mdB21skM11OEdoyKn1X+j1GmO+PVbfBIwTofsrcqK9Y AfxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763477506; x=1764082306; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=CIlNewz5huhSylfx9wKBYS8mfG6SbdE2jYpeBcLcGnc=; b=xP7jd3lpUr3GBhfDGhNeUdzDIwFCxB8+GpbrsndwZk4WkbzgsOoSPUrvnDY4Ir1ZbL +EKsKLeANFyxRKhEZj1IGwrDXd135tEGySn65obmX6tOmU1XF9C9eSmi8BmIVqzFlG6n e9SKKuigoB1NHBwwa9Y0IiId/jOO5kRZoMwkKUB8euFH9BRFxD4PVx5wVo2tB06UnR5D aDOpjQ/QA5L1ZPuuyL7AU/aCQHicXCFMBurEKszAGWYqty9zYBE5sCZ1wnEv3PNPPE5x 4WpvnwqzLWbziCo2KVzPT8gtCjf0mZ91f/PiaBq2lZhiZlXx/Yl883GaRAcJsu3zUh1Z TuQQ== X-Forwarded-Encrypted: i=1; AJvYcCVeKo1WIhmeSYQQ8RxG2LUlQ5Vjle1tyQ1xXvm7X7kKutNIPlmSbiMY5NpeTb1PP6YhR2ZC7rz+wu7U0+8=@vger.kernel.org X-Gm-Message-State: AOJu0Yz6kkmv3fksvj44ZjVIvgrefeaCNxPGVdQdTwNPePvay/f2Yd38 bmKIpvwYDi5fDsa6f/8cvmXLGdJLDFnxGDzWLxTr3YMyFtOllk33TSFmXESru62pnwQcV0YlkqQ m6O7kBoXSvXiJkIj8ZJqmNvz+uTU8KUqIdLteDa19qQHzdA3ufzv8PIscYOXeVGwWP80= X-Gm-Gg: ASbGncvKX7QoniM/DS/cjTN4u87+9jyTf4y3WaImry0xaKjDddlKKGmmzM+pSg2S8rv HXRze2knTq9UkqyVdQI+wNpnr3Rb0+qnhtrGWtFFlKCZSNe6kSeRqLR23N7Dg7K2VhkB/qMy5XT tPRo8p9wmxHOoicFRtCi3dke0zTxYyT3NleQrvo6xfaIr4zlR2T6grfMZ4IuBxMvVqz1kQNjhXu QGwQcpQ5jG4Rk9/1XoZ/4jIDc+Y4hPhO+LKjbtyyUhzK0ejGyc3r9dnaIHGRnd8fZNJRVH9VuO1 wapzXeNkM38vkf9P3n6q+YF8P5gYiTme7vWawBjrPMEKVgCxsYQyVoQ3ixaBZGVZMay6KXF/gC5 sg38nUuASwMDMf7Wi/sul7wb7jdJo29AlLwEwgEIo/2DF6oHQN1ZPkbSbMJuDFwsnpSWuqwokpP JZ2VJJNtTT6mgN X-Received: by 2002:a05:622a:ce:b0:4c4:6b67:ccd7 with SMTP id d75a77b69052e-4edf2115889mr222028421cf.55.1763477506244; Tue, 18 Nov 2025 06:51:46 -0800 (PST) X-Google-Smtp-Source: AGHT+IGVS8N8VHsVYiW0k7onzk7eNE1qizFWtu9jQliWalm//hreHBJzziNsUwpECi5l77abjRGbhw== X-Received: by 2002:a05:622a:ce:b0:4c4:6b67:ccd7 with SMTP id d75a77b69052e-4edf2115889mr222027991cf.55.1763477505770; Tue, 18 Nov 2025 06:51:45 -0800 (PST) Received: from umbar.lan (2001-14ba-a0c3-3a00-264b-feff-fe8b-be8a.rev.dnainternet.fi. [2001:14ba:a0c3:3a00:264b:feff:fe8b:be8a]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-595804056c9sm4078452e87.90.2025.11.18.06.51.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Nov 2025 06:51:44 -0800 (PST) From: Dmitry Baryshkov Date: Tue, 18 Nov 2025 16:51:40 +0200 Subject: [PATCH RESEND 1/2] drm/msm/dpu: simplify bg_alpha selection Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251118-dpu-rework-alpha-v1-1-293d39402b59@oss.qualcomm.com> References: <20251118-dpu-rework-alpha-v1-0-293d39402b59@oss.qualcomm.com> In-Reply-To: <20251118-dpu-rework-alpha-v1-0-293d39402b59@oss.qualcomm.com> To: Rob Clark , Dmitry Baryshkov , Abhinav Kumar , Jessica Zhang , 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, Dmitry Baryshkov X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1778; i=dmitry.baryshkov@oss.qualcomm.com; h=from:subject:message-id; bh=sY/SEDXrsZr0BmS/LMw9TXkPSauhq7bXwHnS9koPDnM=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBpHIf88T0dnu/Bdnvg8CfTfhWTjN0pkQ597GtgI kD/IPt7miqJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCaRyH/AAKCRCLPIo+Aiko 1X9XCACVLoKFvOqIsZB5xZvyetFJqy2ocjHKYtlm9nXB1OARuPziEaFV6ilby7xmEmoiSOnR7bQ TkVIoeS4HB0cto8afZWvKu+1EDRW6kyOfayiXsnOya2Ocg50npHenJdrT9gyU1yeo6IxJgDOvo6 7hD739r6BwDhq5YWWaFefsic1vtinbZWNRghG1GgZDBgZ1z8StmN3oOUQRI93tn7RPnrQqdbG+Z p20YN3+XTHZme3rpVoy/3TvLfY55TVUcpFPPOLptHWWzlCJQ5i8l2uaAgCxO/T6y5QCxXo9zTGE DACManN9BppwPJLbRFlQL1CS1eAJVPZ08+4IdGZGZZP+Fv2T X-Developer-Key: i=dmitry.baryshkov@oss.qualcomm.com; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMTE4MDExOSBTYWx0ZWRfX/X7fobPTyR9E 1p4E5yG1Kqzy5oizjHLcuP+SmkxsEx0wfzImEWarBw+GiVE9HIcZ/SzUuOOYgmbQgSq37kKBB7+ y6y44Q5jUw6VbgKe1+q0Tn5Do8010yFvgP8EADqVdKsmil41+J46I4tSBIcrVclW/ZIDQ3Juemj QDMzpKxvKDaWcJh69I5STR1c1y8WPa6MoZigIKXwGsPLuKQaNtGDph7JWjOaX9oeqX0nKyxmFGh 3Dt9xneqscw3dUBKc5ITICX+b3sJAacRGehMMhvq+Tcq6RUdd3YxCPl/PN2BbZdC5v90cDlknBZ pcdyILuO/iWvgXF/nb9IDtj6bQeJm056ZJIOt3uhiT6EX3XjOOtX6Ls0kltfsUyQ1L7J3/I2tJ1 Er5X4BoRp3Zvj0zySaDBTkXW1hT6wA== X-Authority-Analysis: v=2.4 cv=EPoLElZC c=1 sm=1 tr=0 ts=691c8803 cx=c_pps a=JbAStetqSzwMeJznSMzCyw==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=6UeiqGixMTsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=ID75BBqnTVE1V_rUnp8A:9 a=QEXdDO2ut3YA:10 a=uxP6HrT_eTzRwkO_Te1X:22 X-Proofpoint-ORIG-GUID: WulTyx_J_neiDuGt5gsMwV1dndC4h_AM X-Proofpoint-GUID: WulTyx_J_neiDuGt5gsMwV1dndC4h_AM X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-18_01,2025-11-18_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 bulkscore=0 priorityscore=1501 impostorscore=0 lowpriorityscore=0 phishscore=0 adultscore=0 spamscore=0 clxscore=1015 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2511180119 In order to be more obvious in fg_alpha / bg_alpha handling during the blending programming drop the default setting for background alpha value and set it explicitly in all cases. Signed-off-by: Dmitry Baryshkov Reviewed-by: Konrad Dybcio --- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c b/drivers/gpu/drm/msm= /disp/dpu1/dpu_crtc.c index d4b545448d74657aafc96e9042c7756654b4f0e7..651159e8731194d75b52c05158b= fd1c9bad8b10c 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c @@ -335,13 +335,13 @@ static void _dpu_crtc_setup_blend_cfg(struct dpu_crtc= _mixer *mixer, max_alpha =3D 0x3ff; fg_alpha =3D pstate->base.alpha >> 6; } - bg_alpha =3D max_alpha - fg_alpha; =20 /* default to opaque blending */ if (pstate->base.pixel_blend_mode =3D=3D DRM_MODE_BLEND_PIXEL_NONE || !format->alpha_enable) { blend_op =3D DPU_BLEND_FG_ALPHA_FG_CONST | DPU_BLEND_BG_ALPHA_BG_CONST; + bg_alpha =3D max_alpha - fg_alpha; } else if (pstate->base.pixel_blend_mode =3D=3D DRM_MODE_BLEND_PREMULTI) { blend_op =3D DPU_BLEND_FG_ALPHA_FG_CONST | DPU_BLEND_BG_ALPHA_FG_PIXEL; @@ -350,6 +350,7 @@ static void _dpu_crtc_setup_blend_cfg(struct dpu_crtc_m= ixer *mixer, blend_op |=3D DPU_BLEND_BG_MOD_ALPHA | DPU_BLEND_BG_INV_MOD_ALPHA; } else { + bg_alpha =3D 0; blend_op |=3D DPU_BLEND_BG_INV_ALPHA; } } else { @@ -363,6 +364,7 @@ static void _dpu_crtc_setup_blend_cfg(struct dpu_crtc_m= ixer *mixer, DPU_BLEND_BG_MOD_ALPHA | DPU_BLEND_BG_INV_MOD_ALPHA; } else { + bg_alpha =3D 0; blend_op |=3D DPU_BLEND_BG_INV_ALPHA; } } --=20 2.47.3 From nobody Tue Dec 2 02:49:44 2025 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DDA3835E55C for ; Tue, 18 Nov 2025 14:51:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763477511; cv=none; b=hG8bS9541T8VebgdUZKhcHVjuLDZOvGAPgry2knIXckcmaGTDPw0XtqrQTXMszjfNuFXMjm5I58yTzO1VX+i9ihHTHJDyoFXxYXAx7ggugg8AsDB+KaQflATgYeYS///VImoiAuDEMTHABpTcttEUWU4U7XJFWcaJQ7uxoKMxCE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763477511; c=relaxed/simple; bh=S/lbDFYMKbt7kFl+fZ/HQH44YveonZFk8GY1SvQjVQA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Vbaqim9nJSvTw2i4idWVR3pehAf7XYJXao3FKHBpx0lTuvcL9jvE2938NlnnZT+55swtwY52vs7sokxO1XKhaDJmkByux+geO+hF+GPC69YCq/t4uYNXflpnoWs0DdiwQ/vW6gU/C1PLRVOLAw4/rwtyV+FKQZjDNmzV+EbIpkU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=kWYrNlKi; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=fmvtFs21; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="kWYrNlKi"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="fmvtFs21" Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5AI8VK1s2249853 for ; Tue, 18 Nov 2025 14:51:49 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= YBdOKUQHmFcMB4rOVEiiR5nT0YtFNhOv3ctcY9wpcVw=; b=kWYrNlKii+84B+vK uv/xa3goNNFAHRFPPIptLst+/1fH0wl1XOy2wv9ddMSCVP9j5xH0cAcfWTZb8UCM iwAGl5Jdd+VTUXluiMyoiAi7LGl/Q3+xm9bbSlZALlhQ/VGmZnFveIXyC0x87LHC n2g2MCyOeuiU9s/rfEzZvH4yrZIe08BARhnujjkvUx4HZjSxox/j8mRsYxVYv76j nPvVul/GZnYCDZh1cC80YXoNctWkUxzNySEhqRa0XjHETCJDWQ3kch8gxva14kRN yGCSosJndeWsRy7bsHNVuD2S8LV7/2qRFiJtAHyX4DIPtx3WwQjb3K7N6QQuWgVC BJc1wA== Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4agnc5h1xg-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 18 Nov 2025 14:51:49 +0000 (GMT) Received: by mail-qt1-f197.google.com with SMTP id d75a77b69052e-4ed82af96faso163119351cf.1 for ; Tue, 18 Nov 2025 06:51:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1763477508; x=1764082308; 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=YBdOKUQHmFcMB4rOVEiiR5nT0YtFNhOv3ctcY9wpcVw=; b=fmvtFs21Avm8j1jkmJvmg8frryTV2X/Kha0btUM/UdmnLkJIQ14jIS98Mk/UnoZOUv qL0KOQLs0Kv+JoTSGhP9Qx44fP303CaEjnOOSvmGXG6hGH5pA9XwiXQszY6L3ch7acrl wjy9cvIqcSeABoKKFT9Se5ESMuVeTRewma0/H4FPWOfiMD/0la0CvEUUMr1ivPdoXWKV USqZquGYxzVePGwuTenRRo+ISPn81AyG8575ionBCjjEC9xdedAunOU2+U7+SlIfhWmy fRIFNJ+jX5tBJUwLO0gv/fVIdzVwSQOr05zFLeUVuSm0E4rbTxLRFo3HYQEilkFfzuWx Tk2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763477508; x=1764082308; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=YBdOKUQHmFcMB4rOVEiiR5nT0YtFNhOv3ctcY9wpcVw=; b=IB6myczBnhHvwGqdJ2lntprmdVpl2Oaiw8lizn/sdM7L3R7UZ4anJDaooqJW1sSUbV fjdRld97nP0aXm3MzIfqVHrSl1rQdEQRrDE7QQWjd0JR6PZFGdlL0KjCWg8p7CC3ufaN 8resuM7od301X/wTi3a8FL5+9WyaXK2Otl8rYqlJVTU221VZQxx5tYLNga56Ypeo4yMw 5wa6AoRreI2ksH3uqMuy0d4GsF/482l243XuWa6DrZG+WcR8HhJY7fOlLR9ikCC3FZUw 5Wg4VI0WtBavJWUGtzraHE8t2W/RxQgz7g+b0bNpR4b4hxWJiipdjslhEmRMmpzHMpb6 wPJw== X-Forwarded-Encrypted: i=1; AJvYcCU8dOl1CQuIKLZ5YYZbDIMHkpRtNYayhukglWLUYvQCFAbOjKVEm+xTVXU9XmrCIWgY4ukf2I6g+jgAZ4I=@vger.kernel.org X-Gm-Message-State: AOJu0Ywi+btmc76eTu1mH6LokPcDcJXSJiRBzG37dZ1sJZn+eWV7d22l uLBNSZZRDwGlEbJQocVPe4LEwzSPRCmjslcX2gizF2CxigM3C910k+Fq3YNi8KVF5q9leCzIRW0 SQwsuJYjPo59Kc9+0T2iEJbjOoS2IfdHxsWUORysZemX6hQUEaqrs9UFwKPh/Dz4Frao= X-Gm-Gg: ASbGncvvuyWUqv6dgZThp0hFEGc/8P0u7o7SyVxbogu3hpwuMIhePOzkQMA4zZC9z08 x1vlwBQ/H6zZKo7M+K0zr1PHVDoUK1WcBaGG7OZFYX0wBHJ5rgo4uvda5g9d/ZDUkSd6NE5wnIA v5L2qdGp2pQlebiCZ2/GA95dc0S/IySJX+pL/HICbRyNMWRFCMWNdq/sx+v9jHiNaVhIQ6d+X1/ 8z1eh+PfpE3Yn7yYVHNnjztlpfGiRK/itP2oNEuF363kK4nrpAG3GrHmAVw45N2ZMVRN4ee+jIj 10Qcpn5v3ZHuk0Ms5bzHMDvhA73Go33XnP5kUtAFB/Ykv+VD4yov+GRkv9xe/J7VZoj1RfUCa6b pvtTChG9B0Q2nlrC1GxxhbBzP966fKyNu94fZQSOQg+Eo2jpxwlQhft3/XDNSdQb1m31JI8aeDX 4MN1zE1HYJEgNK X-Received: by 2002:a05:622a:554:b0:4ed:542:bb38 with SMTP id d75a77b69052e-4edf2136349mr211080651cf.74.1763477508005; Tue, 18 Nov 2025 06:51:48 -0800 (PST) X-Google-Smtp-Source: AGHT+IHGmZ2THZm1IcciqPzEhvC/9B6pEuamD5f3D2VLUr+syZIbxXWrwA0NNhuotIIfSVJJ0UVqDg== X-Received: by 2002:a05:622a:554:b0:4ed:542:bb38 with SMTP id d75a77b69052e-4edf2136349mr211080221cf.74.1763477507541; Tue, 18 Nov 2025 06:51:47 -0800 (PST) Received: from umbar.lan (2001-14ba-a0c3-3a00-264b-feff-fe8b-be8a.rev.dnainternet.fi. [2001:14ba:a0c3:3a00:264b:feff:fe8b:be8a]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-595804056c9sm4078452e87.90.2025.11.18.06.51.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Nov 2025 06:51:46 -0800 (PST) From: Dmitry Baryshkov Date: Tue, 18 Nov 2025 16:51:41 +0200 Subject: [PATCH RESEND 2/2] drm/msm/dpu: use full scale alpha in _dpu_crtc_setup_blend_cfg() Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251118-dpu-rework-alpha-v1-2-293d39402b59@oss.qualcomm.com> References: <20251118-dpu-rework-alpha-v1-0-293d39402b59@oss.qualcomm.com> In-Reply-To: <20251118-dpu-rework-alpha-v1-0-293d39402b59@oss.qualcomm.com> To: Rob Clark , Dmitry Baryshkov , Abhinav Kumar , Jessica Zhang , 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, Dmitry Baryshkov X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3889; i=dmitry.baryshkov@oss.qualcomm.com; h=from:subject:message-id; bh=S/lbDFYMKbt7kFl+fZ/HQH44YveonZFk8GY1SvQjVQA=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBpHIf8IzhHGPLjJDCmR05+bDOeqtvwIVJbo3ALS 0P22UCukleJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCaRyH/AAKCRCLPIo+Aiko 1fRoCACxkXSaH5+XAmMiiWTq3dU4KIgsDLBneucVx2XWIFkRGccgto5n1NEa6bpGrG1Gh8hALED hiYud6oxNSdvONQm3DrKPIV0chib34A7uE6KmhqLtPiAqejt7mteS4ml8DHBdb9UYSoOlBgqzRJ YQtZGyzsjAtXrSldT7H8CQCyGY1TWGB9qwgY7gkJlbxeOhwKlz76T1wD9RzFNmNsmY4JGliNctw 8iKd9/mKQrBkOw59cSi9Q5P7/LzK36LXu4vm6FhwHPAgDhTdEV8kGfaWnS+3+9GnLTdilG9q4iB kfgHsgdwWsH9BHauqrgOQvVWt+3cgvQncB4vKa6hN7s+yjQ6 X-Developer-Key: i=dmitry.baryshkov@oss.qualcomm.com; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A X-Proofpoint-GUID: jgVMBnVFWt92bqXofl0zpUxGUD9wZbh4 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMTE4MDExOSBTYWx0ZWRfXwx2JUZo+fuw0 ig3omnRU09qFYtmrZkcD7E80K5HZWqEw6loARPdFw75lT9BX0/RaSSZf6OlFX92M/3XO49hmzOj KNcgm01j66BMV8m2+zOprTvtF4jtM1bP7UXMQBAD8vs+4oGamqwZLKMUG0glkximrYISnpdm+Xj /Cy2PadJngTrf1iHzz2LiZZguPSci6NvamadMrAsHALEABa1BYFbJfx4IzHNCrfSEYrSjwcODp6 nznDKGKPuaJykEriX5jkEtaVzoCcap1FA1HWOeDivV3u4qLyCY/Gnz86jdEakDeCSKdZYfHXryi uYjPL+SC1gdqTCLpXRy+u8aaz0Vy8Ukr4Z5qrLoG+WQrNtJhLTw3+61GI6y/3kUXtVf6SHH1+mL WmiOVg7cE53LTav0T9vGctBIHPBE7g== X-Authority-Analysis: v=2.4 cv=BYTVE7t2 c=1 sm=1 tr=0 ts=691c8805 cx=c_pps a=EVbN6Ke/fEF3bsl7X48z0g==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=6UeiqGixMTsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=QNru2a5V_XkHKSg3hPgA:9 a=QEXdDO2ut3YA:10 a=a_PwQJl-kcHnX1M80qC6:22 X-Proofpoint-ORIG-GUID: jgVMBnVFWt92bqXofl0zpUxGUD9wZbh4 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-18_01,2025-11-18_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 spamscore=0 bulkscore=0 clxscore=1015 priorityscore=1501 lowpriorityscore=0 suspectscore=0 phishscore=0 impostorscore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2511180119 Both _dpu_crtc_setup_blend_cfg() and setup_blend_config_alpha() callbacks embed knowledge about platform's alpha range (8-bit or 10-bit). Make _dpu_crtc_setup_blend_cfg() use full 16-bit values for alpha and reduce alpha only in DPU-specific callbacks. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 16 +++++----------- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.c | 10 ++++++---- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c b/drivers/gpu/drm/msm= /disp/dpu1/dpu_crtc.c index 651159e8731194d75b52c05158bfd1c9bad8b10c..a280c136104added1dbb2b432f1= 5680bc1d5bd36 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c @@ -326,26 +326,20 @@ static void _dpu_crtc_setup_blend_cfg(struct dpu_crtc= _mixer *mixer, { struct dpu_hw_mixer *lm =3D mixer->hw_lm; u32 blend_op; - u32 fg_alpha, bg_alpha, max_alpha; + u32 fg_alpha, bg_alpha; =20 - if (mdss_ver->core_major_ver < 12) { - max_alpha =3D 0xff; - fg_alpha =3D pstate->base.alpha >> 8; - } else { - max_alpha =3D 0x3ff; - fg_alpha =3D pstate->base.alpha >> 6; - } + fg_alpha =3D pstate->base.alpha; =20 /* default to opaque blending */ if (pstate->base.pixel_blend_mode =3D=3D DRM_MODE_BLEND_PIXEL_NONE || !format->alpha_enable) { blend_op =3D DPU_BLEND_FG_ALPHA_FG_CONST | DPU_BLEND_BG_ALPHA_BG_CONST; - bg_alpha =3D max_alpha - fg_alpha; + bg_alpha =3D DRM_BLEND_ALPHA_OPAQUE - fg_alpha; } else if (pstate->base.pixel_blend_mode =3D=3D DRM_MODE_BLEND_PREMULTI) { blend_op =3D DPU_BLEND_FG_ALPHA_FG_CONST | DPU_BLEND_BG_ALPHA_FG_PIXEL; - if (fg_alpha !=3D max_alpha) { + if (fg_alpha !=3D DRM_BLEND_ALPHA_OPAQUE) { bg_alpha =3D fg_alpha; blend_op |=3D DPU_BLEND_BG_MOD_ALPHA | DPU_BLEND_BG_INV_MOD_ALPHA; @@ -357,7 +351,7 @@ static void _dpu_crtc_setup_blend_cfg(struct dpu_crtc_m= ixer *mixer, /* coverage blending */ blend_op =3D DPU_BLEND_FG_ALPHA_FG_PIXEL | DPU_BLEND_BG_ALPHA_FG_PIXEL; - if (fg_alpha !=3D max_alpha) { + if (fg_alpha !=3D DRM_BLEND_ALPHA_OPAQUE) { bg_alpha =3D fg_alpha; blend_op |=3D DPU_BLEND_FG_MOD_ALPHA | DPU_BLEND_FG_INV_MOD_ALPHA | diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.c b/drivers/gpu/drm/ms= m/disp/dpu1/dpu_hw_lm.c index e8a76d5192c230fd64d748634ca8574a59aac02c..fb8c94fdb829be6f89bfcc6c5a8= 3fdbd27778bf2 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_lm.c @@ -139,7 +139,8 @@ static void dpu_hw_lm_setup_blend_config_combined_alpha= (struct dpu_hw_mixer *ctx if (WARN_ON(stage_off < 0)) return; =20 - const_alpha =3D (bg_alpha & 0xFF) | ((fg_alpha & 0xFF) << 16); + const_alpha =3D ((bg_alpha >> 8) & 0xff) | + (((fg_alpha >> 8) & 0xff) << 16); DPU_REG_WRITE(c, LM_BLEND0_CONST_ALPHA + stage_off, const_alpha); DPU_REG_WRITE(c, LM_BLEND0_OP + stage_off, blend_op); } @@ -160,7 +161,8 @@ dpu_hw_lm_setup_blend_config_combined_alpha_v12(struct = dpu_hw_mixer *ctx, if (WARN_ON(stage_off < 0)) return; =20 - const_alpha =3D (bg_alpha & 0x3ff) | ((fg_alpha & 0x3ff) << 16); + const_alpha =3D ((bg_alpha >> 6) & 0x3ff) | + (((fg_alpha >> 6) & 0x3ff) << 16); DPU_REG_WRITE(c, LM_BLEND0_CONST_ALPHA_V12 + stage_off, const_alpha); DPU_REG_WRITE(c, LM_BLEND0_OP + stage_off, blend_op); } @@ -178,8 +180,8 @@ static void dpu_hw_lm_setup_blend_config(struct dpu_hw_= mixer *ctx, if (WARN_ON(stage_off < 0)) return; =20 - DPU_REG_WRITE(c, LM_BLEND0_FG_ALPHA + stage_off, fg_alpha); - DPU_REG_WRITE(c, LM_BLEND0_BG_ALPHA + stage_off, bg_alpha); + DPU_REG_WRITE(c, LM_BLEND0_FG_ALPHA + stage_off, fg_alpha >> 8); + DPU_REG_WRITE(c, LM_BLEND0_BG_ALPHA + stage_off, bg_alpha >> 8); DPU_REG_WRITE(c, LM_BLEND0_OP + stage_off, blend_op); } =20 --=20 2.47.3