From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alan Cox Subject: Re: [PATCH 3/7] asm-generic/io.h: make ioread64 and iowrite64 universally available Date: Thu, 22 Jun 2017 21:36:55 +0100 Message-ID: <20170622213655.07dffac2@alans-desktop> References: <20170622164817.25515-1-logang@deltatee.com> <20170622164817.25515-4-logang@deltatee.com> <20170622211431.14270378@alans-desktop> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Logan Gunthorpe Cc: linux-arch@vger.kernel.org, Arnd Bergmann , Greg Kroah-Hartman , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Stephen Bates , linux-crypto@vger.kernel.org, linux-alpha@vger.kernel.org, linux-ntb@googlegroups.com, linuxppc-dev@lists.ozlabs.org List-Id: linux-arch.vger.kernel.org T24gVGh1LCAyMiBKdW4gMjAxNyAxNDoyNDo1OCAtMDYwMApMb2dhbiBHdW50aG9ycGUgPGxvZ2Fu Z0BkZWx0YXRlZS5jb20+IHdyb3RlOgoKPiBPbiA2LzIyLzIwMTcgMjoxNCBQTSwgQWxhbiBDb3gg d3JvdGU6Cj4gPiBJZiBhIHBsYXRmb3JtIGRvZXNuJ3Qgc3VwcG9ydCA2NGJpdCBJL08gb3BlcmF0 aW9ucyBmcm9tIHRoZSBDUFUgdGhlbiB5b3UKPiA+IGVpdGhlciBuZWVkIHRvIHVzZSBzb21lIGtp bmQgb2YgcGxhdGZvcm0vYXJjaGl0ZWN0dXJlIHNwZWNpZmljIGludGVyZmFjZQo+ID4gaWYgcHJl c2VudCBvciBhY2NlcHQgeW91IGRvbid0IGhhdmUgb25lLiAgCj4gCj4gWWVzLCBJIHVuZGVyc3Rh bmQgdGhhdC4KPiAKPiBUaGUgdGhpbmcgaXMgdGhhdCBldmVyeSB1c2VyIHRoYXQncyBjdXJyZW50 bHkgdXNpbmcgaXQgcmlnaHQgbm93IGlzIAo+IHBhdGNoaW5nIGluIHRoZWlyIG93biB2ZXJzaW9u IHRoYXQgc3BsaXRzIGl0IG9uIG5vbi02NGJpdCBzeXN0ZW1zLgo+IAo+ID4gSXQncyBub3Qgc2Fm ZSB0byBzcGxpdCBpdC4gUG9zc2libHkgZm9yIHNvbWUgdXNlIGNhc2VzIHlvdSBjb3VsZCBhZGQg YW4KPiA+IGlvcmVhZDY0X21heXNwbGl0KCkgIAo+IAo+IEknbSBvcGVuIHRvIGRvaW5nIHNvbWV0 aGluZyBsaWtlIHRoYXQuCgpJIHRoaW5rIHRoYXQgbWFrZXMgc2Vuc2UgZm9yIHRoZSBwbGF0Zm9y bXMgd2l0aCB0aGF0IHByb2JsZW0uIEknbSBub3QKc3VyZSB0aGVyZSBhcmUgbWFueSB0aGF0IGNh bid0IGRvIGl0IGZvciBtbWlvIGF0IGxlYXN0LiA0ODZTWCBjYW4ndCBkbyBpdAphbmQgSSBndWVz cyBzb21lIEFSTTMyIGJ1dCBJIHRoaW5rIGFsbW9zdCBldmVyeW9uZSBlbHNlIGNhbiBpbmNsdWRp bmcKbW9zdCAzMmJpdCB4ODYuCgpXaGF0J3MgbW9yZSBvZiBhIHByb2JsZW0gaXMgYSBsb3Qgb2Yg cGxhdGZvcm1zIGNhbiBkbyA2NGJpdCBNTUlPIHZpYQppb3JlYWQvd3JpdGU2NCBidXQgbm90IDY0 Yml0IHBvcnQgSS9PLCBhbmQgaXQncyBub3QgY2xlYXIgaG93IHlvdQpyZXByZXNlbnQgdGhhdCB2 aWEgYW4gaW9yZWFkL3dyaXRlIEFQSSB0aGF0IGFic3RyYWN0cyBpdCBhd2F5LgoKQWxhbgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFp bGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from www.llwyncelyn.cymru ([82.70.14.225]:58250 "EHLO fuzix.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751193AbdFVUhO (ORCPT ); Thu, 22 Jun 2017 16:37:14 -0400 Date: Thu, 22 Jun 2017 21:36:55 +0100 From: Alan Cox Subject: Re: [PATCH 3/7] asm-generic/io.h: make ioread64 and iowrite64 universally available Message-ID: <20170622213655.07dffac2@alans-desktop> In-Reply-To: References: <20170622164817.25515-1-logang@deltatee.com> <20170622164817.25515-4-logang@deltatee.com> <20170622211431.14270378@alans-desktop> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-arch-owner@vger.kernel.org List-ID: To: Logan Gunthorpe Cc: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-ntb@googlegroups.com, linux-alpha@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-crypto@vger.kernel.org, dri-devel@lists.freedesktop.org, Arnd Bergmann , Greg Kroah-Hartman , Stephen Bates Message-ID: <20170622203655.B_JlhMS_8RjWUwIybgydtzCbkSQgZnacGJVN96s5usY@z> On Thu, 22 Jun 2017 14:24:58 -0600 Logan Gunthorpe wrote: > On 6/22/2017 2:14 PM, Alan Cox wrote: > > If a platform doesn't support 64bit I/O operations from the CPU then you > > either need to use some kind of platform/architecture specific interface > > if present or accept you don't have one. > > Yes, I understand that. > > The thing is that every user that's currently using it right now is > patching in their own version that splits it on non-64bit systems. > > > It's not safe to split it. Possibly for some use cases you could add an > > ioread64_maysplit() > > I'm open to doing something like that. I think that makes sense for the platforms with that problem. I'm not sure there are many that can't do it for mmio at least. 486SX can't do it and I guess some ARM32 but I think almost everyone else can including most 32bit x86. What's more of a problem is a lot of platforms can do 64bit MMIO via ioread/write64 but not 64bit port I/O, and it's not clear how you represent that via an ioread/write API that abstracts it away. Alan