Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751834AbcDUH1q (ORCPT ); Thu, 21 Apr 2016 03:27:46 -0400 Received: from mail-wm0-f52.google.com ([74.125.82.52]:32978 "EHLO mail-wm0-f52.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751393AbcDUH1o (ORCPT ); Thu, 21 Apr 2016 03:27:44 -0400 Date: Thu, 21 Apr 2016 09:27:39 +0200 From: Daniel Vetter To: "Luis R. Rodriguez" Cc: Chris Wilson , David Airlie , netdev@vger.kernel.org, intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, Ingo Molnar , "Peter Zijlstra (Intel)" , dri-devel@lists.freedesktop.org, linux-rdma@vger.kernel.org, Daniel Vetter , Dan Williams , Yishai Hadas , David Hildenbrand Subject: Re: [Intel-gfx] [PATCH 4/4] drm/i915: Move ioremap_wc tracking onto VMA Message-ID: <20160421072739.GV2510@phenom.ffwll.local> Mail-Followup-To: "Luis R. Rodriguez" , Chris Wilson , David Airlie , netdev@vger.kernel.org, intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, Ingo Molnar , "Peter Zijlstra (Intel)" , dri-devel@lists.freedesktop.org, linux-rdma@vger.kernel.org, Daniel Vetter , Dan Williams , Yishai Hadas , David Hildenbrand References: <20160419123028.GI1990@wotan.suse.de> <1461069238-31539-1-git-send-email-chris@chris-wilson.co.uk> <1461069238-31539-4-git-send-email-chris@chris-wilson.co.uk> <20160420091054.GL1990@wotan.suse.de> <20160420111730.GL2510@phenom.ffwll.local> <20160420212727.GS1990@wotan.suse.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160420212727.GS1990@wotan.suse.de> X-Operating-System: Linux phenom 4.4.0-1-amd64 User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1755 Lines: 37 On Wed, Apr 20, 2016 at 11:27:27PM +0200, Luis R. Rodriguez wrote: > On Wed, Apr 20, 2016 at 01:17:30PM +0200, Daniel Vetter wrote: > > On Wed, Apr 20, 2016 at 11:10:54AM +0200, Luis R. Rodriguez wrote: > > > Reason I ask is since I noticed a while ago a lot of drivers > > > were using info->fix.smem_start and info->fix.smem_len consistently > > > for their ioremap'd areas it might make sense instead to let the > > > internal framebuffer (register_framebuffer()) optionally manage the > > > ioremap_wc() for drivers, given that this is pretty generic stuff. > > > > All that legacy fbdev stuff is just for legacy support, and I prefer to > > have that as dumb as possible. There's been some discussion even around > > lifting the "kick out firmware fb driver" out of fbdev, since we'd need it > > to have a simple drm driver for e.g. uefi. > > > > But I definitely don't want a legacy horror show like fbdev to > > automagically take care of device mappings for drivers. > > Makes sense, it also still begs the question if more modern APIs > could manage the ioremap for you. Evidence shows people get > sloppy and if things were done internally with helpers it may > be easier to later make adjustments. Real gpus generally have so much mmio space that you want to ioremap them on demand. At least if you still care about 32bit support. And on-die gpus on socs or similar tend to not have an mmio range to access the gfx remapping range at all, but instead expect that to be done with gpu pagetables. So at least with gpus I don't see a real demand for this, and the existing users are mostly old fbdev drivers that really no one should be touching ;-) Cheers, Daniel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch