Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp1731448ybi; Sat, 25 May 2019 08:03:38 -0700 (PDT) X-Google-Smtp-Source: APXvYqxgsoJMxbOY8tIYo7F7cILn+JWQrKQPYvIu+Kr4nHcD+23f+KQCk0ALYY9yfoKj6W4FWgTQ X-Received: by 2002:a63:5107:: with SMTP id f7mr9427733pgb.198.1558796618260; Sat, 25 May 2019 08:03:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1558796618; cv=none; d=google.com; s=arc-20160816; b=NqAau7sG03lY8L8BrT+TdR93hni/RB5laDMboVXrJQ9LJ8ak5Yne03C3DvRjq+aheG RdAMnK5GHYKqFhBu++8KSdjsFgA0qX2w5iIep64WTAXLzMi51LIc5uff1XzHo+/edLcE YSQxQ9GFibIDhv9giWJRBWsZLR3q07Op5vNoDHGtItIkN3prMlhtEa3QG8gpTznZF+fP x/dg4bBRPqcha+6cniz+CGmHsfrxGQMRR3PKAguy8MxSA5ldF2e7skU25KQ05WbfNrpc hRDC6cIqE/q1mCO+pbyq1BOlyCBOti6dKLULGoiMbdzxxqJtPm5ad5FRGw79xfkFVNwq GX3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-transfer-encoding:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=YTbPWMe7zOsYMstHzjQC+fKU2rr1Ik8PEtDJW4+i7IQ=; b=QEgNHoAV0f6JxUC+WMLSa+QFtYj48t9x7Uz4/FeFYevhzSfJhVEvOlfP3fWpWsFkTJ KGyD+iHLIgt0JVZqOSp36mUe4ja1e0lxZk8QalD0+e4psQu2iJyflzoMr0hyOwbzG/63 QNqyKq34SJDOgQbIO4tJECLmmrOQky0jFD5vyE+ncdANfMuqELUaxRmfEHQAUhHWStt2 GxEtuUfzv7gb0O7uqK5XNGyeLJu4XWK9QBj+s0ppad5K7j5RZXLhPUV5XtsbPsYdtqOf hBHBpy3Hd4Lt6pZ8Sq3UU3GR+yIW+i5LLvfZutUIWX1F4Vt+CczgRoBWbyZtgH/ujZwM pQEA== 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 g190si8054901pgc.1.2019.05.25.08.03.20; Sat, 25 May 2019 08:03:38 -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 S1727110AbfEYPCH (ORCPT + 99 others); Sat, 25 May 2019 11:02:07 -0400 Received: from asavdk4.altibox.net ([109.247.116.15]:37976 "EHLO asavdk4.altibox.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727002AbfEYPCH (ORCPT ); Sat, 25 May 2019 11:02:07 -0400 Received: from ravnborg.org (unknown [158.248.194.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by asavdk4.altibox.net (Postfix) with ESMTPS id 7C9228036E; Sat, 25 May 2019 17:02:02 +0200 (CEST) Date: Sat, 25 May 2019 17:01:59 +0200 From: Sam Ravnborg To: Daniel Vetter Cc: LKML , Intel Graphics Development , Geert Uytterhoeven , DRI Development Subject: Re: [PATCH 11/33] fbdev/sh_mobile: remove sh_mobile_lcdc_display_notify Message-ID: <20190525150159.GA27341@ravnborg.org> References: <20190524085354.27411-1-daniel.vetter@ffwll.ch> <20190524085354.27411-12-daniel.vetter@ffwll.ch> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20190524085354.27411-12-daniel.vetter@ffwll.ch> User-Agent: Mutt/1.10.1 (2018-07-13) X-CMAE-Score: 0 X-CMAE-Analysis: v=2.3 cv=VcLZwmh9 c=1 sm=1 tr=0 a=UWs3HLbX/2nnQ3s7vZ42gw==:117 a=UWs3HLbX/2nnQ3s7vZ42gw==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=IkcTkHD0fZMA:10 a=e5mUnYsNAAAA:8 a=48fi2nN1bOFThYuLmmEA:9 a=FjwzjW-X6r35EzHo:21 a=pi2SNfIRU6eJWu1B:21 a=QEXdDO2ut3YA:10 a=Vxmtnl_E_bksehYqCbjh:22 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Daniel > It's dead code, and removing it avoids me having to understand > what it's doing with lock_fb_info. I pushed the series through my build tests which include the sh architecture. One error and one warning was triggered from sh_mobile_lcdcfb.c. The rest was fine. The patch below removed the sole user of sh_mobile_lcdc_must_reconfigure() so this triggers a warning. And I also get the following error: drivers/video/fbdev/sh_mobile_lcdcfb.c: In function ‘sh_mobile_fb_reconfig’: drivers/video/fbdev/sh_mobile_lcdcfb.c:1800:2: error: implicit declaration of function ‘fbcon_update_vcs’; did you mean ‘file_update_time’? [-Werror=implicit-function-declaration] fbcon_update_vcs(info, true); ^~~~~~~~~~~~~~~~ file_update_time I did not check but assume the error was triggered in patch 28 where fbcon_update_vcs() in introduced. Both are trivially fixed by appended patch. Sam diff --git a/drivers/video/fbdev/sh_mobile_lcdcfb.c b/drivers/video/fbdev/sh_mobile_lcdcfb.c index bb1a610d0363..b8454424910d 100644 --- a/drivers/video/fbdev/sh_mobile_lcdcfb.c +++ b/drivers/video/fbdev/sh_mobile_lcdcfb.c @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include @@ -533,25 +534,6 @@ static void sh_mobile_lcdc_display_off(struct sh_mobile_lcdc_chan *ch) ch->tx_dev->ops->display_off(ch->tx_dev); } -static bool -sh_mobile_lcdc_must_reconfigure(struct sh_mobile_lcdc_chan *ch, - const struct fb_videomode *new_mode) -{ - dev_dbg(ch->info->dev, "Old %ux%u, new %ux%u\n", - ch->display.mode.xres, ch->display.mode.yres, - new_mode->xres, new_mode->yres); - - /* It can be a different monitor with an equal video-mode */ - if (fb_mode_is_equal(&ch->display.mode, new_mode)) - return false; - - dev_dbg(ch->info->dev, "Switching %u -> %u lines\n", - ch->display.mode.yres, new_mode->yres); - ch->display.mode = *new_mode; - - return true; -} - static int sh_mobile_lcdc_check_var(struct fb_var_screeninfo *var, struct fb_info *info); > Signed-off-by: Daniel Vetter > Reviewed-by: Geert Uytterhoeven > Cc: Geert Uytterhoeven > Cc: Daniel Vetter > --- > drivers/video/fbdev/sh_mobile_lcdcfb.c | 63 -------------------------- > drivers/video/fbdev/sh_mobile_lcdcfb.h | 5 -- > 2 files changed, 68 deletions(-) > > diff --git a/drivers/video/fbdev/sh_mobile_lcdcfb.c b/drivers/video/fbdev/sh_mobile_lcdcfb.c > index dc46be38c970..c5924f5e98c6 100644 > --- a/drivers/video/fbdev/sh_mobile_lcdcfb.c > +++ b/drivers/video/fbdev/sh_mobile_lcdcfb.c > @@ -556,67 +556,6 @@ sh_mobile_lcdc_must_reconfigure(struct sh_mobile_lcdc_chan *ch, > static int sh_mobile_lcdc_check_var(struct fb_var_screeninfo *var, > struct fb_info *info); > > -static int sh_mobile_lcdc_display_notify(struct sh_mobile_lcdc_chan *ch, > - enum sh_mobile_lcdc_entity_event event, > - const struct fb_videomode *mode, > - const struct fb_monspecs *monspec) > -{ > - struct fb_info *info = ch->info; > - struct fb_var_screeninfo var; > - int ret = 0; > - > - switch (event) { > - case SH_MOBILE_LCDC_EVENT_DISPLAY_CONNECT: > - /* HDMI plug in */ > - console_lock(); > - if (lock_fb_info(info)) { > - > - > - ch->display.width = monspec->max_x * 10; > - ch->display.height = monspec->max_y * 10; > - > - if (!sh_mobile_lcdc_must_reconfigure(ch, mode) && > - info->state == FBINFO_STATE_RUNNING) { > - /* First activation with the default monitor. > - * Just turn on, if we run a resume here, the > - * logo disappears. > - */ > - info->var.width = ch->display.width; > - info->var.height = ch->display.height; > - sh_mobile_lcdc_display_on(ch); > - } else { > - /* New monitor or have to wake up */ > - fb_set_suspend(info, 0); > - } > - > - > - unlock_fb_info(info); > - } > - console_unlock(); > - break; > - > - case SH_MOBILE_LCDC_EVENT_DISPLAY_DISCONNECT: > - /* HDMI disconnect */ > - console_lock(); > - if (lock_fb_info(info)) { > - fb_set_suspend(info, 1); > - unlock_fb_info(info); > - } > - console_unlock(); > - break; > - > - case SH_MOBILE_LCDC_EVENT_DISPLAY_MODE: > - /* Validate a proposed new mode */ > - fb_videomode_to_var(&var, mode); > - var.bits_per_pixel = info->var.bits_per_pixel; > - var.grayscale = info->var.grayscale; > - ret = sh_mobile_lcdc_check_var(&var, info); > - break; > - } > - > - return ret; > -} > - > /* ----------------------------------------------------------------------------- > * Format helpers > */ > @@ -2540,8 +2479,6 @@ sh_mobile_lcdc_channel_init(struct sh_mobile_lcdc_chan *ch) > unsigned int max_size; > unsigned int i; > > - ch->notify = sh_mobile_lcdc_display_notify; > - > /* Validate the format. */ > format = sh_mobile_format_info(cfg->fourcc); > if (format == NULL) { > diff --git a/drivers/video/fbdev/sh_mobile_lcdcfb.h b/drivers/video/fbdev/sh_mobile_lcdcfb.h > index b8e47a8bd8ab..589400372098 100644 > --- a/drivers/video/fbdev/sh_mobile_lcdcfb.h > +++ b/drivers/video/fbdev/sh_mobile_lcdcfb.h > @@ -87,11 +87,6 @@ struct sh_mobile_lcdc_chan { > unsigned long base_addr_c; > unsigned int line_size; > > - int (*notify)(struct sh_mobile_lcdc_chan *ch, > - enum sh_mobile_lcdc_entity_event event, > - const struct fb_videomode *mode, > - const struct fb_monspecs *monspec); > - > /* Backlight */ > struct backlight_device *bl; > unsigned int bl_brightness; > -- > 2.20.1 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel