Received: by 2002:a05:6a10:af89:0:0:0:0 with SMTP id iu9csp3377195pxb; Mon, 17 Jan 2022 19:02:22 -0800 (PST) X-Google-Smtp-Source: ABdhPJz5og7p7ZPbKS5gkJWqBChTjFocknC8sYN4++E7L+d7WLip8DMa47s4vfZcnBEwYM6FqXcR X-Received: by 2002:a63:82c2:: with SMTP id w185mr15628817pgd.264.1642474942374; Mon, 17 Jan 2022 19:02:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1642474942; cv=none; d=google.com; s=arc-20160816; b=NwbeouzYFDg2kzh2O+bQ8jrNmRD0g72gA9sDyZl4ccgRagqxZTI41oSe2nx1sMTJKA JxrEmEH63iBVQwyjaPGXvJhHguDJyu3UNJZOisiOelAKNotXnwNsyCQQ5P5MkcW9NLAr PCe83GdT4we4EYWGpfJXKPsSYD6JuR6PscGUUigPFluw+gIkC0E26JhRCmYz/iNYddcz Iz/xAqjlJOnSsKQeZ22fyt9QXUBWIkKmRe36JZg3NtSdKQdST7KS/9eY73mzHTj+sQOJ LGyM6RyxA2ar3cwPgePinwS1Tri/6N5tWk9TlrvcW1s+8voxgMcMFAWt3+2Z14ETWCoL z+ww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id:dkim-signature; bh=XyUJqTkQnltqVASI603GZ5Vvs7ivC8/T6VH6MIzEzBo=; b=dq8mv0w6mQbQYM50i8RrG900EeqDNqlL5+U6gS3yjWYQTCD0zP+qySDWmqR3zSYW1g wtni3U8Tu3IFpJHy47mdXGcBj+IURmoWWsLqcZPAJ8Oqyf0BP57qjHexWCElxNct0QSj 5Am1AYD1iZf5wDJ8wgatIRFBH0UaFMwWvhiSYNRc9J3Gf64L7YAZnHM4PUhDbo95qEc6 Q7mUboNamnYtmi8O3W2n+QyP6kc2ks/TA/B8BY1xYeQsSDJiXT5PKrQoV+p+2/4tw1A3 ecvWXHhLlQSOqhEzcuUChIhOY2/1AVjkFDHP6VHS2qpqr09uNenHozpFj1ezyUCOh0pa uEug== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmx.net header.s=badeba3b8450 header.b=KW2UfH9x; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmx.de Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id r18si16658812pgv.516.2022.01.17.19.02.10; Mon, 17 Jan 2022 19:02:22 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmx.net header.s=badeba3b8450 header.b=KW2UfH9x; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmx.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242375AbiAQUSU (ORCPT + 99 others); Mon, 17 Jan 2022 15:18:20 -0500 Received: from mout.gmx.net ([212.227.15.15]:56763 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231964AbiAQUST (ORCPT ); Mon, 17 Jan 2022 15:18:19 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1642450689; bh=KCY8X2y2Vnk71ilSMMSCpiULMPeoSQ28Wxj5Cc45cVA=; h=X-UI-Sender-Class:Date:Subject:To:Cc:References:From:In-Reply-To; b=KW2UfH9xCVNwyBe/5BSqSaHxgQUrC6LgyRng8YoryXjuxvVmhQNvMoNoTrouoD7L5 L0JfJna7ioSsZMqZqwmNeZXzhuo/p27cnz3avEkENtru6kiJxxd2I1Yz78NCXx5sOb TB0XiHfqxiu+cF3neojmVNwKOePuM8STsGpijNYw= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.20.60] ([92.116.167.237]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MRCK6-1mvCT63Z3c-00NEII; Mon, 17 Jan 2022 21:18:08 +0100 Message-ID: Date: Mon, 17 Jan 2022 21:17:04 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.3.0 Subject: Re: [PATCH] MAINTAINERS: Add Helge as fbdev maintainer Content-Language: en-US To: Daniel Vetter Cc: Geert Uytterhoeven , Thomas Zimmermann , Gerd Hoffmann , Linus Torvalds , "airlied@gmail.com" , Linux Fbdev development list , Linux Kernel Mailing List , DRI Development , Javier Martinez Canillas , Sven Schnelle References: <20220117125716.yjwxsze35j2ndn2i@sirius.home.kraxel.org> <70530b62-7b3f-db88-7f1a-f89b824e5825@suse.de> <57d276d3-aa12-fa40-6f90-dc19ef393679@gmx.de> From: Helge Deller In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:2RXldoJ1Jt10As/nLASf/6Yb4wGfmMbg62AH4oKNO4dup/n8ErT Q6ybpEaOL44rz7KK4PYJHSg1qPtP/AA5xwkEIOOfv8Ua3+18/FlY0hRMtlSIDwgUSUdxPC3 +S0FVQkQNSwLeI6RAT49E8T9Rm4RHBiALlZc/ZVKrkskMKx98Yvd+bnEj8VKLAggojWXdKZ Ig2WZCYUMB0fBafcVAASg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:lADmUlNvY0w=:JUW1XobJcedqZV8XakPpb8 OmMfJPjR+nD3POVYV8BQVpuqBkESti3S/bGgmXz9CvRXPJz5f+e5CESenn5EDkgu6yTUi+79Z erCgPIsPJcXwmoblI7LKRj/VzsFiM8WZ4aAjrK+cUAJ+TxDDfvZ0iKZlQ0eq6zZwk8NuaGEvS JSfEjdGA7uN55efjFtA3wP3Y2ACC9i7idn+6rNg+smUPsOGSyNx9ZA11mDSVG521U9Wt4qJ9q 22Yzcvi69PpPEfAZbs6AKw1Xg39NwSiVHlMV7oftt4kb9eu1AVsiovyTHlALG5XdtwPgmtNnu 5MOPfJBSOnKDcxk1jDlsfORf/cRVtvAmbvtFRA/IRgzRtHa+vuJ7TkOAjJOMJ+BVn5VMz9z6t FWP3VnZAsN6CBH/9rPN5HewCxbprBRiKqCSaUpkMCvoM+DmBxlTVfCcWjx0lqMBMnqovTHjlz f+EcaEnUocKuaWYEnKKCIfZGH7Ef3icaZwqX0UKKeU2K5ykjwpMaBI9A2yGrv9dgLYBK6Px4d ZfyvvhYExJKTQIGnnGy1VD/xjZepHkb0I03iRGA+lfz0YFEqbU0QuyteyJdfVmb42JfKjLpVH 1fEWAlvwyx3jbZtHTBsXGzb+HOaR97CTo2PEKoERPxm2FFQjmPuJll+SL6UQcV+lsaUBr8RFm ld59fwSCLorZbDhPYKtHR2DEIlVcfVhxLRDYBYlnxXrfqGQFqAceNqUJrisSARZjiWNjj6KHd 7GU9ytV6xS4OEaGq645gradXK8bzIP8k6Psp7/bqnkuhPcFlMPrQI6Rn6uLyfRI8CqIVM0YWX 7UlzfIayh//w/kG1w0pBc7jtHlgaPg/MJ0unz1ND6i5zEibRZEX1bffSLIkjREX/5WrMnt4nP kHty+JYCjeMMg3MAakQKVMMsYB1ftKKINEm+DoGxHeQgvI0G39ijvsL6+sNyNfqmsfYfNpZ28 5531Tga5Olesey0ZRFVbJSYoUmVa8o4fbjW+sEuykHzXqaqVOxi7xzoJj6uiEbcIl8fgbxS7S /tTaqpyfCyndE5OPzmFlG/KdPQlq0fI+GQorwSfI443/SEn5KTJNcJ0mSG2k3Qx5VnwxiKTO7 GEPLn8KOuRV/jY= Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 1/17/22 16:03, Daniel Vetter wrote: > On Mon, Jan 17, 2022 at 3:48 PM Helge Deller wrote: >> >> On 1/17/22 15:10, Geert Uytterhoeven wrote: >>> Hi Thomas, >>> >>> On Mon, Jan 17, 2022 at 2:51 PM Thomas Zimmermann wrote: >>>> Am 17.01.22 um 14:29 schrieb Geert Uytterhoeven: >>>>> On Mon, Jan 17, 2022 at 1:57 PM Gerd Hoffmann wr= ote: >>>>>>> b) to include new drivers (for old hardware) if they arrive (proba= bly happens rarely but there can be). >>>>>>> I know of at least one driver which won't be able to support D= RM.... >>>>>> >>>>>> Hmm? I seriously doubt that. There is always the option to use a >>>>>> shadow framebuffer, then convert from standard drm formats to whate= ver >>>>>> esoteric pixel format your hardware expects. >>>>>> >>>>>> Been there, done that. Have a look at the cirrus driver. The phys= ical >>>>>> hardware was designed in the early 90-ies, almost 30 years ago. Th= ese >>>>>> days it exists in virtual form only (qemu emulates it). Thanks to = the >>>>>> drm driver it runs wayland just fine even though it has a bunch of >>>>>> constrains dictated by the hardware design. >>>>> >>>>> The Cirrus DRM driver supports TrueColor (RGB565/888 and ARGB8888) >>>>> modes only. The Cirrus fbdev driver also supports mochrome and 256 >>>>> color modes. >>>>> >>>>> There exist some DRM drivers that do support DRM_FORMAT_C8, but none= of >>>>> the "tiny" ones do. Same for DRM_FORMAT_RGB{332,233}. Using a shado= w >>>>> frame buffer to convert from truecolor to 256 colors would be doable= , >>>>> but would give bad results. And what about less colors? >>>>> Adding support for e.g. DRM_FORMAT_C4 is not straight-forward, as >>>>> the DRM core assumes in many places that a pixel is at least 1 byte, >>>>> and would crash otherwise (yes I tried). Other modes needed are >>>>> DRM_FORMAT_Y4 and DRM_FORMAT_{BW,WB} (monochrome). >>>> >>>> We export XRGB32 from each driver, because userspace expects it. But >>>> that is not a hard requirement. Userspace can use any format. It's ju= st >>>> that no one seems to have any use cases so far, so no work has been >>>> done. Think of XRGB32 as a fallback. >>> >>> Using an XRGB32 intermediate would kill the user experience on old >>> machines, due to both increased memory usage and copy overhead. >>> >>>> Personally, I'd much appreciate if userspace would support more of th= e >>>> native formats and not rely on XRGB32. >>> >>> Supporting monochrome, 16 colors, and 256 colors would be nice. >> >> From this conversation it seems DRM completely lacks backwards compatib= ility, >> including a missing 2D bitblt copy. >> Isn't that all what's needed and then migrating existing drivers would >> be easy ? > > Not sure who you talked to, but we have drivers with fbdev bitblt > accel (well, in some cases had, because driver maintainers decided > it's just not worth it and ripped it out again or never merged it). > Also the other discussions about some low-bit formats is pretty much > just a question of extending a few enums and wiring through the fbdev > emulation layer. No, you got me wrong. I'm not talking about making other low-bit formats available to userspace. I'm talking about running the framebuffer natively on a lower-bit format and to speed up text emulation (fbcon) with help of on-chip 2D bitblt. So, similiar as it was done in fbdev for non-DRM graphic cards before two patches were applied and which disabled this speedup for *all* existing fb= dev drivers: b3ec8cdf457e - "fbdev: Garbage collect fbdev scrolling acceleration, part = 1 (from TODO list)" 39aead8373b3 - "fbcon: Disable accelerated scrolling"for-next-next Esp. the commit message of patch 39aead8373b3 completely ignored the acceleration of the fbdev drivers. Please correct me if I'm wrong, but text-console emulation/scrolling on DR= M is currently unaccelerated and bound to Truecolour modes only, which is proba= bly one of the main reasons why most fbdev drivers can't be ported to DRM... Helge > So the things brought up in this thread thus far are > actually the fairly easy items, which should take at most a handful of > patches to rectify. There's much more nastier issues in fbdev, which > will take serious amounts of development time to fix. > > Unfortunately in the past 5+ years absolutely no one stepped up with > actual patches, which is why fbdev was marked as orphaned in > MAINTAINERS. > -Daniel > >> >> Helge >> >> >>>>> This not only to support "old" hardware, but also modern small OLED >>>>> and e-ink displays. >>>> >>>> There's a DRM driver for Repaper e-Ink displays. So it seems doable a= t >>>> least. >>> >>> Which uses an DRM_FORMAT_XRGB8888 intermediate, and >>> drm_fb_xrgb8888_to_gray8() and repaper_gray8_to_mono_reversed() >>> to convert from truecolor to monochrome. I guess that would work, >>> as this is a slow e-ink display. Have fun as a text console ;-) >>> >>> Gr{oetje,eeting}s, >>> >>> Geert >>> >>> -- >>> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux= -m68k.org >>> >>> In personal conversations with technical people, I call myself a hacke= r. But >>> when I'm talking to journalists I just say "programmer" or something l= ike that. >>> -- Linus Torvalds >>> >> > >