Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp423059ybh; Wed, 18 Mar 2020 02:27:45 -0700 (PDT) X-Google-Smtp-Source: ADFU+vum4mCvUoWtu2pavbZwXcixpO871LCsDa/PY1pgdgUW07ZRMmtMJknw/bk0U5hbsGU/8qZ8 X-Received: by 2002:aca:2801:: with SMTP id 1mr2421708oix.168.1584523664868; Wed, 18 Mar 2020 02:27:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1584523664; cv=none; d=google.com; s=arc-20160816; b=BuvSllbfEaMaQzOUPyEfcXpeqT05HqtETTZnCAA9vlcWRb7GjhWRvh2+4OPTHMmNme S1XopFML1Z7psK4TtkAOT1aAE7KcUOeq1ai1YpuKeDnPn4yEalpDMlEuxevRY6gK50zH KimRvB7Xx3OotCPi+0ewSBSs82PqBdHsRm8v+GCBWfzz9U0gAOep4XEj3swrY2bSy6b1 2/+tGlL+ErGaqzHT8M/0QQM7xFgsUjwD26BWJFqITJA/9hrFCkpFOyXs2neZeqNFw5TM 8oXZmarioBNkAsOubbdLDHQTwyb0ieOliGfLPXnfsphOl0uy01qh+grhf7bRMZwj3+Io 0+mg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version; bh=+8/wnsaooTc7Lyk2H3AEKP+TdpaI3h3+sN0Gf/N2RwE=; b=qq4oVI3k9ILrSdXAOmIsBzXoEKgNYeUJBN1p9WP2tKbR338J6XM8iHtm6LrICrmo8U rY5IJGD10aLu7w3t4dNaAZ2McCEgRTuAaPbyGrh1F8i4YAGrotMkEWiXzip/XyRXfbPO i5JnwaLSbK/OxJWVTRkEimG7oS4+t8Q2qEhTwkGbDN51hCBKedMzsaDkzUg/OKiwQ4tC 1ohwptLouVQ9u/5nlCMo9eGfcPXNyTEGQC+xyU6JkcU4KCg9eusTwR2ZhHmWqpxTt7VW +hFqCppmcsipfPHU3DO0vyHhcZ0/uNlHFUZawynbkd9DRC6K+rNyB+zBz1HtqaosXY/V Tb5w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t132si3100851oih.173.2020.03.18.02.27.33; Wed, 18 Mar 2020 02:27:44 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727517AbgCRJ1M (ORCPT + 99 others); Wed, 18 Mar 2020 05:27:12 -0400 Received: from mout.kundenserver.de ([212.227.126.187]:45273 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727378AbgCRJ1M (ORCPT ); Wed, 18 Mar 2020 05:27:12 -0400 Received: from mail-qv1-f52.google.com ([209.85.219.52]) by mrelayeu.kundenserver.de (mreue009 [212.227.15.129]) with ESMTPSA (Nemesis) id 1MKbc4-1j07t41OrU-00L17b; Wed, 18 Mar 2020 10:27:10 +0100 Received: by mail-qv1-f52.google.com with SMTP id q73so3052817qvq.2; Wed, 18 Mar 2020 02:27:09 -0700 (PDT) X-Gm-Message-State: ANhLgQ3RjbbUDjhwv0qAy37qLDbu4U/HkMOQO3PlT+TfwUO75OjzkFna 3poEfz8B9wodc2xeFJNrhsdhI07NU+nWGcA8Kv0= X-Received: by 2002:a0c:a602:: with SMTP id s2mr3278276qva.222.1584523628935; Wed, 18 Mar 2020 02:27:08 -0700 (PDT) MIME-Version: 1.0 References: <1584200119-18594-1-git-send-email-mikelley@microsoft.com> <1584200119-18594-10-git-send-email-mikelley@microsoft.com> In-Reply-To: From: Arnd Bergmann Date: Wed, 18 Mar 2020 10:26:52 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v6 09/10] arm64: efi: Export screen_info To: Michael Kelley Cc: Will Deacon , Ard Biesheuvel , Catalin Marinas , Mark Rutland , Marc Zyngier , Linux ARM , gregkh , "linux-kernel@vger.kernel.org" , "linux-hyperv@vger.kernel.org" , linux-efi , linux-arch , "olaf@aepfle.de" , Andy Whitcroft , vkuznets , Jason Wang , "marcelo.cerri@canonical.com" , KY Srinivasan , Sunil Muthuswamy , Boqun Feng Content-Type: text/plain; charset="UTF-8" X-Provags-ID: V03:K1:bY4eEKG4UHYos/scM4jTadQCtBvU2fp8j3wO3vu0V3KQYbxBoFz /hhqWVjTyEphKIB7oDVFcWbNO/vulQGgEUjmXc0Pwhdf3L2dz5qhz4EWgu1MMkIp7vr8JVn WWov+w9oLuaD5VJW2awkfMzePjDAD049OSZyok51d1/AYw1Q85o++lNXVLd6WB1qlG7wwvJ TbMcXwYPzG1wMEQTeGMSw== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:+uHVysZQnsI=:zO4Ahm4qYxwLZrOHu5D8mu foizfJqelS4Exx0HET32VmU1liLAZO0X28PTNbHyN8WUYADoUYPPNw2vDUdvcY3ErC4viNrtD sUL9vcAZSJa2mUPXw1t2+2v2iKQLMYqzmS4cpFVOyXBOvAby89dEx4tv96Ziahw5zGyXprOLj 4nz4MfqfRc7k13q5mdv5SrZPO5bXUKL0QVfBNUVXv3HO1njNJBGBim6jQNW0aXir8ub4LS1HQ eAchZPqKrun520NICYr844nZkeMl3OqwA3X6l20uA4nWEapE80cLspmgRI97yzwDILwVWkDjX k6kS1N2HcgekiXH3h2W4pmz6pGjM2bJo0B1gL/vBzPjvwCdzsaNxcfQTUj+xQwb5U3djopJwg AZ7lCG+g6yoO6tLaGUMXzUtJ2yKmh7WaLiLt1h3EhAdxtb9QkfovOPXQJ+K8gfIKzcqerIKqa gwcob0OV2CiLLcWNu2T4Y/9eLsBEX5tpVAt3TCDTHzD1mwliWePr5mxL7P2DxL6lIb6qOBkXm jmdQqNcYlB4Yeeu6rbN9ikIJxNna09hewHwoJTlTqzcecwEqu7MaAQWgT/DVajtq4ZQysujrn 440Q3oZYg5a2Q9S+isCFqJT6SKJd0ZenY50HO4FuobyObzPRjqCGaqFlkZ6iHMk17zNqzKIaE /6R3JakpWJezdnQ5XNCRQ9VogZ9A59Bb3xgmMmjh66ao4DrDXGpxF0UiUP4WvpKigvRBIwMTv v5gF8Co+6V0Wl7dWh8nDqZNZ6SCZGwa44tNZrch/l6tMIr8yWgSHeQWDFRvv+2DWWxDzPegd4 Eqv7fcUsQbO9FyOy5Wyhg33ThQSidlO+UFSulM7/BiaX6kUa3Y= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Mar 18, 2020 at 1:18 AM Michael Kelley wrote: > From: Arnd Bergmann > > On Sat, Mar 14, 2020 at 4:36 PM Michael Kelley wrote: > > > > > > The Hyper-V frame buffer driver may be built as a module, and > > > it needs access to screen_info. So export screen_info. > > > > > > Signed-off-by: Michael Kelley > > > > Is there any chance of using a more modern KMS based driver for the screen > > than the old fbdev subsystem? I had hoped to one day completely remove > > support for the old CONFIG_VIDEO_FBDEV and screen_info from modern > > architectures. > > > > The current hyperv_fb.c driver is all we have today for the synthetic Hyper-V > frame buffer device. That driver builds and runs on both ARM64 and x86. > > I'm not knowledgeable about video/graphics drivers, but when you > say "a more modern KMS based driver", are you meaning one based on > DRM & KMS? Does DRM make sense for a "dumb" frame buffer device? > Are there any drivers that would be a good pattern to look at? It used to be a lot harder to write a DRM driver compared to an fbdev driver, but this has changed to the opposite over the years. A fairly minimal example would be drivers/gpu/drm/pl111/pl111_drv.c or anything in drivers/gpu/drm/tiny/, but you may want to look at the other hypervisor platforms first, i.e drivers/gpu/drm/virtio/virtgpu_drv.c, drivers/gpu/drm/vmwgfx/vmwgfx_drv.c, drivers/gpu/drm/xen/xen_drm_front.c, drivers/gpu/drm/qxl/qxl_drv.c, and drivers/gpu/drm/bochs/bochs_drv.c. Arnd