From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f48.google.com (mail-pj1-f48.google.com [209.85.216.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 B6EC4377EA4 for ; Sun, 31 May 2026 07:37:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.48 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780213046; cv=none; b=G24wKV7VHPwj74p+jALlj/LvIm40lvR5Al+k2H8pR//vMQx3qBaAA6qGmbhWwOMygoIws7YYldd35cgiUgsaFwDBq6rRYCNO0xNSXC+FNYGCx8opjSWjqL5Pj0rEicgh/XI5zV5BiOWPp+7rWltPpVfRCtzdP+m1j8GkuFnQ7ow= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780213046; c=relaxed/simple; bh=408VAmBF5WtOD1c3gHIMaQowaolX31ztM3e8rOwAkmk=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=dUHTG+oWgJFApA3yB2toW0iAPM753SFLccOyhur5tY3ld8LS2mDWHmpWaPIDrbfPAX3QxqELtNTsxDb4gyuX3Sj2+WYV6MRjGVugzlXyAiu5h8aZH52qXj1RRB+qAVXyZsswXAuAX6HRJ7+0/kutqWCeSHV9LphgLmEC8zJ9hm8= 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=qMuKMbNW; arc=none smtp.client-ip=209.85.216.48 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="qMuKMbNW" Received: by mail-pj1-f48.google.com with SMTP id 98e67ed59e1d1-36da8439078so81263a91.2 for ; Sun, 31 May 2026 00:37:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1780213045; x=1780817845; 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=g7Nfdh9lJmyo73Y+RAkYTNq+7+iO9zy7FykzaU5yHn8=; b=qMuKMbNW/lPAl+Z2eC0ic2vxUpPkyvY1SzeHXxexWRNUq5CrmZxGiHVAV/rFQHB/ga okj9arDnJmHoNfZhaOS6F85pNkS9BFY9zoFHdn7VbTnPKhFi/FRKrENgWRdyioCZ6kUt xX2k2Bnj7Mv4oXNX4gtBQDVGKHluChBwkfMKbDIqydXayU4Lpi/FaNue6zEVV33BPhyK g2GLjdhKMm19LQnuOvfRwWv22HZGMjobMd3xANoRQJLVX3+R/rYUnKYivTEHUAHe/beb qO60G3eHBRkYY3H75p7lezX7yKVyiKNtZq/PIHWKiFdl6C9Hfaw3/DZTbDeXP8SCvpdq h/KQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780213045; x=1780817845; 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=g7Nfdh9lJmyo73Y+RAkYTNq+7+iO9zy7FykzaU5yHn8=; b=EGdI5BUpW2Q8NRdGePYyTdxQ3Tnm3JMw86dvfBrgSsd32bgSkxJXwHaEDDYlyHuqSN 4ggspRfnZDJpU4kv5ZhK67jXb5V5MWsTGcFP97mgtzTKvczFkuslAvie3/Pj2hvkPfyL jYcRwF0CXOvchrQ/jHSMS1Tf7m5v4VFhJvjQEtm6ScHZALISP/9RL2nsPnuyvBnMM3TK HNkgvEWpDuHHaZQjNA00yn16Ted+tGCBrpsExP0o60QG+NWWzaDqvNt+AWnO51Zksar2 BBBv1voRszIj50M1Br4nPbad06/2jNWxnsoJL8Ht45TyVynL2g6QIph+svdZwnTcPHv7 4V0g== X-Forwarded-Encrypted: i=1; AFNElJ8CIQLXLi0BeOlbPuqLdTrOuM5dHcvJur4VhivLynN5UM6SUTERKnepEFBJB5jeai18XF+zYFBBKzifGTc=@vger.kernel.org X-Gm-Message-State: AOJu0Yy/k3lLT3Q202tAxkcmxqiheCOMg3L7KRxTqCj+sY9W0Hz3qt+I hbnXahEL0HQrJGEH9YylzV+XVBMjz9fLsOFKfnjC6q/NfDOg/9K4vJG4 X-Gm-Gg: Acq92OH+wyAKCeEMrmXDB5ciWgtunuNZat3LR61FH1FkjBNtxg3jDOY37KnSULSSV/k tTcSgCn6tR6MK6loBGePNhBuPl0QBK+WTC/4wY2LpH5sPhK9YMLC54ZZxBHCGNN9b7asiusmWOB 6KRjX/a4sjLEIDQiZYQAEagCZjlooPTmQxdOJSpreO4ciTPuNVCJpq5Dpa0bLktaXOE353DN/tS aNnunXLfVFmRaq9ZBVjqVWk0VvVdsBCg69o17iNMJ+S9UBi9ZVaJUh4mhjHg/vpuoVhYHk4tv9K 6MxkPcTyznhyiNIkwjClKFJcQLrb6d7HV0jmVcFRu4xbjhr+ixnJ3E1XD4Ej06PlwDLeYgt/nOu sL0qo4cG11HtHQYZJOhV08vto+LI4N3D3Z7GtoAPGUsTax4rUYATyhBMmXGmWWm6ntDTKSwsOv7 85DMPU7Y0T4k+7/+tnYcF/QxZt7cIV5AMqg4MdAkwU9A== X-Received: by 2002:a05:6a20:d04e:b0:39f:3ca8:a33b with SMTP id adf61e73a8af0-3b427fe4d91mr6837181637.17.1780213044907; Sun, 31 May 2026 00:37:24 -0700 (PDT) Received: from Naman.Naman ([2401:4900:1f39:4c4a:1e56:d301:ce43:ac25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-8422e712309sm3760709b3a.59.2026.05.31.00.37.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 31 May 2026 00:37:23 -0700 (PDT) From: Naman Arora To: dri-devel@lists.freedesktop.org Cc: tzimmermann@suse.de, maarten.lankhorst@linux.intel.com, mripard@kernel.org, airlied@gmail.com, simona@ffwll.ch, stefan@agner.ch, alison.wang@nxp.com, jyri.sarha@iki.fi, tomi.valkeinen@ideasonboard.com, kraxel@redhat.com, dmitry.osipenko@collabora.com, neil.armstrong@linaro.org, khilman@baylibre.com, linux-kernel@vger.kernel.org, virtualization@lists.linux.dev, linux-amlogic@lists.infradead.org, linux-arm-kernel@lists.infradead.org, Naman Arora Subject: [PATCH 3/6] drm/virtio: Open-code drm_simple_encoder_init() Date: Sun, 31 May 2026 13:05:29 +0530 Message-Id: <20260531073532.8609-4-namanarora029@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20260531073532.8609-1-namanarora029@gmail.com> References: <20260531073532.8609-1-namanarora029@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The helper drm_simple_encoder_init() is a thin wrapper around drm_encoder_init() with a simple destroy-only encoder funcs struct. Remove the dependency on drm_simple_kms_helper by open-coding the encoder initialization directly in the driver. Signed-off-by: Naman Arora --- drivers/gpu/drm/virtio/virtgpu_display.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/virtio/virtgpu_display.c b/drivers/gpu/drm/virtio/virtgpu_display.c index f1dae9569..5b99cce17 100644 --- a/drivers/gpu/drm/virtio/virtgpu_display.c +++ b/drivers/gpu/drm/virtio/virtgpu_display.c @@ -32,7 +32,6 @@ #include #include #include -#include #include #include @@ -271,6 +270,10 @@ static const struct drm_connector_funcs virtio_gpu_connector_funcs = { .atomic_destroy_state = drm_atomic_helper_connector_destroy_state, }; +static const struct drm_encoder_funcs virtio_gpu_drm_encoder_funcs = { + .destroy = drm_encoder_cleanup, +}; + static int vgdev_output_init(struct virtio_gpu_device *vgdev, int index) { struct drm_device *dev = vgdev->ddev; @@ -306,7 +309,8 @@ static int vgdev_output_init(struct virtio_gpu_device *vgdev, int index) if (vgdev->has_edid) drm_connector_attach_edid_property(connector); - drm_simple_encoder_init(dev, encoder, DRM_MODE_ENCODER_VIRTUAL); + drm_encoder_init(dev, encoder, &virtio_gpu_drm_encoder_funcs, + DRM_MODE_ENCODER_VIRTUAL, NULL); drm_encoder_helper_add(encoder, &virtio_gpu_enc_helper_funcs); encoder->possible_crtcs = 1 << index; -- 2.20.1