From patchwork Thu Dec 19 13:22:14 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Takashi Iwai X-Patchwork-Id: 3380711 Return-Path: X-Original-To: patchwork-linux-fbdev@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id DA707C0D4A for ; Thu, 19 Dec 2013 13:22:26 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 1EDED20649 for ; Thu, 19 Dec 2013 13:22:22 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 59B6D20439 for ; Thu, 19 Dec 2013 13:22:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752296Ab3LSNWQ (ORCPT ); Thu, 19 Dec 2013 08:22:16 -0500 Received: from cantor2.suse.de ([195.135.220.15]:55401 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751540Ab3LSNWP (ORCPT ); Thu, 19 Dec 2013 08:22:15 -0500 Received: from relay1.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 00A47ABC6; Thu, 19 Dec 2013 13:22:15 +0000 (UTC) Date: Thu, 19 Dec 2013 14:22:14 +0100 Message-ID: From: Takashi Iwai To: David Herrmann Cc: One Thousand Gnomes , Ingo Molnar , linux-kernel , Stephen Warren , "linux-fbdev@vger.kernel.org" , "the arch/x86 maintainers" Subject: Re: cirrusdrmfb broken with simplefb In-Reply-To: References: <20131218092941.GA19210@gmail.com> <20131219000346.0f722b65@alan.etchedpixels.co.uk> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.8 Emacs/24.3 (x86_64-suse-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Sender: linux-fbdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-fbdev@vger.kernel.org X-Spam-Status: No, score=-7.4 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP At Thu, 19 Dec 2013 13:36:38 +0100, David Herrmann wrote: > > Hi > > On Thu, Dec 19, 2013 at 12:06 PM, Takashi Iwai wrote: > > At Thu, 19 Dec 2013 11:46:51 +0100, > > David Herrmann wrote: > >> > >> Hi > >> > >> On Thu, Dec 19, 2013 at 1:03 AM, One Thousand Gnomes > >> wrote: > >> >> > That bug always existed, simplefb is just the first driver to hit it > >> >> > (vesafb/efifb didn't use resources). I'm aware of the issue but as a > >> >> > workaround you can simply disable CONFIG_X86_SYSFB. That restores > >> >> > the old behavior. > >> >> > >> >> This looks like a regression, so we'll either need a fix or we'll have > >> >> to mark CONFIG_X86_SYSFB as CONFIG_BROKEN. > >> > > >> > Kernel bugzilla has entries for simplefb breaking both vesafb and matrox > >> > mga. > >> > >> Thanks for the hints. I've read through all I could find and tried to > >> provide some help. > >> > >> I'm kind of confused, most of them enable CONFIG_X86_SYSFB (which is > >> 'n' by default) but don't read the help text. I did my best to tell > >> people that this option requires CONFIG_FB_SIMPLE, but if you don't > >> read the help-text you won't notice that. Don't know what to do about > >> that.. > > > > You can set FB_SIMPLE default value depending on X86_SYSFB, something > > like: > > > > --- a/drivers/video/Kconfig > > +++ b/drivers/video/Kconfig > > @@ -2455,6 +2455,7 @@ config FB_HYPERV > > config FB_SIMPLE > > bool "Simple framebuffer support" > > depends on (FB = y) > > + default y if X86_SYSFB > > select FB_CFB_FILLRECT > > select FB_CFB_COPYAREA > > select FB_CFB_IMAGEBLIT > > The "default if " only works if the config hasn't been set at > all, yet. Even a "# CONFIG_* is unset" causes the "default" value to > be ignored. Yes. I didn't suggest the strict dependency like below, just because I assumed you didn't add it intentionally. > How about adding "depends on (FB_SIMPLE = y)" for X86_SYSFB? I guess I > will try that and send a patch. That's in general a bad approach. If the strict dependency is allowed, a more intuitive way is to give a reverse selection. But then you'd need to correct the help text, too, as it's implemented already as a dependency. Takashi --- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -2299,6 +2299,7 @@ source "drivers/rapidio/Kconfig" config X86_SYSFB bool "Mark VGA/VBE/EFI FB as generic system framebuffer" + select SIMPLE_FB help Firmwares often provide initial graphics framebuffers so the BIOS, bootloader or kernel can show basic video-output during boot for