From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) (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 C59033CAE76 for ; Sat, 9 May 2026 19:00:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778353230; cv=none; b=DwCBRdL5F9QhpLpwrOYqytoQgkFY4frQ2uElTu/Bya8oeyk1/0D3in41FtU5YrR8tu1cPkp/aslhU8xTtqx1jRIP6XEgQYeQY1Nw+JGfcc6WXPmcqb870GHUTxiS/An9zGkitBiC3Zkmg1v+mGloAQRoeFTM64JIG+xqEprmqLM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778353230; c=relaxed/simple; bh=dJZiUI/nXwbVKeTyU5YlTJh5eS1vXANNoICbkU5BWMk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=EzZA0pA83JeB3dF1IEnDealZN3n2usXVHyCo/Ro7LZAa81WVpl980Yfb4GWE34Yo/aiGtNJ1uWwjWwTeJfIoaLAknAqtrqRCYYLUGrvFqG9ExrjJlb5VhOq1HwmrrLdlwXxDGRQPW02fgjBh9eCx6kJhQJpFISiydWFzcwFDe3w= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=mAfn7DsJ; arc=none smtp.client-ip=209.85.221.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="mAfn7DsJ" Received: by mail-wr1-f52.google.com with SMTP id ffacd0b85a97d-44a044cb827so2348038f8f.0 for ; Sat, 09 May 2026 12:00:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778353226; x=1778958026; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OFHSVkKikAqL7V5/tk/bF1gVjwq2bK7i4HjBHfLDqaU=; b=mAfn7DsJuE1lS8lGbqvF+gtkWlU/TsGy/CqufQjfeEA9W/jXxKCaHkQwFdKa67ESso yj1jhLqg2Xgx3+90wT8ohnK5GLjEheXlbHh1btbLJqgIM+sVSQINZLkiayiB6Z+YPUT9 lnW1xrkJKFvRuS3YZRPpY5BdvNrDWvrw/SZDfWbu2AEY0y1hXaqCvUm9DiGK4XbdxE5g XKGK2jVbvY4rh7T2v/M017k2ae+6fwB8LrcY8nIgMGzaObAGeojriFlR1+DfOhb2VdTa /6v5VDBfaGk0ydDFHLkaT+rRaH9JinlZfZYgwdw02ITpNbZsn2J8QwZwTQpj7V+UG5xj onnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778353226; x=1778958026; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=OFHSVkKikAqL7V5/tk/bF1gVjwq2bK7i4HjBHfLDqaU=; b=eK3/FqaardvatyE0rBPWhAQ4zTbBLcY13mIQwcY+I6mFKgYu3qYWbbhs/mihf7uxoG LIhMrKCegIJNklrWJPiGd2PUVGmjiTmncWfiUHqF89tkiS+hKZpAr1HB6Umkbl9ZSJE/ KETCAQjO4pyenTWCUNW/JBQX5oMdhRmf0FWlIbVwNAqi+QkZAuNGNjCtwY0/NwH0/zUb yk65lbTh/EQsGgu4xnoI7QQRv7ADTVy+Vu6QQoCX9wgmMwO8k9ddpq5lwtzTOfYs7vQ1 AcqPCKHvml6kkVKGXmTwmSspM7wiqIxxJBJvMD60eSHk/xgrbcMg3WTd9H6vuV4lFrcZ Hwrw== X-Forwarded-Encrypted: i=1; AFNElJ+MD4+gNLXJohwgJRsk1+30ZCtKF+eBKiVa8e858To/IIjMqIFxH2RIZ/KkKt9sCshGw6tZYG1B0Tg7kAQ=@vger.kernel.org X-Gm-Message-State: AOJu0YziXLAvukWQgVnUlUNBk44ai94IDU3t7fIOuIvR5QzBmfg4Bk0S lEZ58xGl+gKMTLMnPZbPBZpwUNZKgq9xreaqD1KutkE7te46ScG9gB6N X-Gm-Gg: Acq92OE6QpWfZqexlKO9H0Qccvr53Ux5E4QtmXUSdHUcF68v2pvE/Zy/XFmsHMYrII4 XUq3uJMUOniBMFMicQu62eyz5NPjuhpIvrt9XSupIeUjL7dBi2KYCTNtRveLi5XTnvRSf9fqWr0 Jow04gPw6cb4aFMWi3fivExhvhWSUDvNcQC12jMZocevTWgZDO73D7/HBUt+MelTWQW2sWmndH0 qOgLY7YeX8mZeHuXCQPwSMRuL+18tttExL39lpRdVPRBfLoMCf076lI6/WzD67bAPno9gdINN+r AAFvcniN7lQLZE737fkM8jkf/BpUnbY+Vc9VIfvAirH4uTBiUTywkN0c+fy7lj3U3IoUeos0Ni5 NjJBPP9L5L0zWnitrCcJlbGUNE70h1yPimRX7NY/5Io7YYeUrsV1k+mftsV5xniciaulRIk5ggd jJqFjeFD5GpptyuLvpwiQM4GoprHmWHIDNW5qSMQ68b3Rwz7p/Yd/5C+H+mhHa+wEj4t4= X-Received: by 2002:a05:6000:40dc:b0:43d:309b:9c4f with SMTP id ffacd0b85a97d-4515b056c90mr27920879f8f.6.1778353225999; Sat, 09 May 2026 12:00:25 -0700 (PDT) Received: from jernej-laptop (46-150-62-216.dynamic.telemach.net. [46.150.62.216]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-454913049ecsm13254407f8f.19.2026.05.09.12.00.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 09 May 2026 12:00:25 -0700 (PDT) From: Jernej Skrabec X-Google-Original-From: Jernej Skrabec To: wens@csie.org, samuel@sholland.org Cc: mripard@kernel.org, maarten.lankhorst@linux.intel.com, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, mturquette@baylibre.com, sboyd@kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, linux-clk@vger.kernel.org, jernej.skrabec@gmail.com, Chen-Yu Tsai Subject: [PATCH v2 4/8] drm/sun4i: vi_layer: Limit formats for DE33 Date: Sat, 9 May 2026 21:00:11 +0200 Message-ID: <20260509190015.79086-5-jernej.skrabec@siol.net> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260509190015.79086-1-jernej.skrabec@siol.net> References: <20260509190015.79086-1-jernej.skrabec@siol.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Jernej Skrabec YUV formats need scaler support due to chroma upscaling, but that's not yet supported in the driver. Remove them from supported list until DE33 scaler is properly supported. Reviewed-by: Chen-Yu Tsai Signed-off-by: Jernej Skrabec --- Changes from v1: - collected tag - generalize check to be dependant on scaler feature drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 40 ++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c index cd8d6c2da0c7..afbd41a18a0e 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c +++ b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c @@ -380,6 +380,33 @@ static const u32 sun8i_vi_layer_de3_formats[] = { DRM_FORMAT_YVU422, }; +static const u32 sun8i_vi_layer_de3_no_yuv_formats[] = { + DRM_FORMAT_ABGR1555, + DRM_FORMAT_ABGR2101010, + DRM_FORMAT_ABGR4444, + DRM_FORMAT_ABGR8888, + DRM_FORMAT_ARGB1555, + DRM_FORMAT_ARGB2101010, + DRM_FORMAT_ARGB4444, + DRM_FORMAT_ARGB8888, + DRM_FORMAT_BGR565, + DRM_FORMAT_BGR888, + DRM_FORMAT_BGRA1010102, + DRM_FORMAT_BGRA5551, + DRM_FORMAT_BGRA4444, + DRM_FORMAT_BGRA8888, + DRM_FORMAT_BGRX8888, + DRM_FORMAT_RGB565, + DRM_FORMAT_RGB888, + DRM_FORMAT_RGBA1010102, + DRM_FORMAT_RGBA4444, + DRM_FORMAT_RGBA5551, + DRM_FORMAT_RGBA8888, + DRM_FORMAT_RGBX8888, + DRM_FORMAT_XBGR8888, + DRM_FORMAT_XRGB8888, +}; + static const uint64_t sun8i_layer_modifiers[] = { DRM_FORMAT_MOD_LINEAR, DRM_FORMAT_MOD_INVALID @@ -410,8 +437,17 @@ struct sun8i_layer *sun8i_vi_layer_init_one(struct drm_device *drm, layer->cfg = cfg; if (layer->cfg->de_type >= SUN8I_MIXER_DE3) { - formats = sun8i_vi_layer_de3_formats; - format_count = ARRAY_SIZE(sun8i_vi_layer_de3_formats); + /* + * TODO: DE33 drivers doesn't support scaling yet, which is a + * requirement for YUV support. + */ + if (layer->cfg->scaler_mask & BIT(phy_index)) { + formats = sun8i_vi_layer_de3_formats; + format_count = ARRAY_SIZE(sun8i_vi_layer_de3_formats); + } else { + formats = sun8i_vi_layer_de3_no_yuv_formats; + format_count = ARRAY_SIZE(sun8i_vi_layer_de3_no_yuv_formats); + } } else { formats = sun8i_vi_layer_formats; format_count = ARRAY_SIZE(sun8i_vi_layer_formats); -- 2.54.0