From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexey.Brodkin@synopsys.com (Alexey Brodkin) Date: Fri, 17 Jun 2016 06:47:47 +0000 Subject: of_reserved_mem_device_init_by_idx() returns -EINVAL if "memory-region" is missing In-Reply-To: References: <1466095574.4442.53.camel@synopsys.com> List-ID: Message-ID: <1466146013.2948.1.camel@synopsys.com> To: linux-snps-arc@lists.infradead.org Hi Marek, On Fri, 2016-06-17@07:28 +0200, Marek Szyprowski wrote: > Hi Alexey > > > On 2016-06-16 18:47, Alexey Brodkin wrote: > > > > Hi Marek, > > > > We used to use of_reserved_mem_device_init() in such a context in GPU drivers: > > -------------------->8------------------- > > /* Get the optional framebuffer memory resource */ > > ret = of_reserved_mem_device_init(drm->dev); > > if (ret && ret != -ENODEV) > > return ret; > > -------------------->8------------------- > > > > The point is we may have a dedicated reserved memory area or may not have (depends on a particular .dts). > > Our expectation is if reserved memory area is missing then of_reserved_mem_device_init() > > just returns -ENODEV and it used to work like this. > > > > Now with your commit 59ce4039727e "of: reserved_mem: add support for using more than one region for given device" > > behavior is different. of_reserved_mem_device_init_by_idx() has this: > > -------------------->8------------------- > > target = of_parse_phandle(np, "memory-region", idx); > > if (!target) > > return -EINVAL; > > -------------------->8------------------- > > > > So I'm wondering which part should be fixed: > > ? 1) of_reserved_mem itself or > > ? 2) users of of_reserved_mem_device_init() > > > > Any thoughts? > > This was my fault. The fix is already queued to linux-next, see commit > 9f5a802b1d51dc80a27d828a5f7dcc8ec4a72f03 ("[media] of: reserved_mem: restore > old behavior when no region is defined"), > http://www.spinics.net/lists/linux-media/msg100972.html > Indeed with mentioned fix GPU driver now works again! Sorry for the noise and thank you for fixing it that fast. Regards, Alexey From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexey Brodkin Subject: Re: of_reserved_mem_device_init_by_idx() returns -EINVAL if "memory-region" is missing Date: Fri, 17 Jun 2016 06:47:47 +0000 Message-ID: <1466146013.2948.1.camel@synopsys.com> References: <1466095574.4442.53.camel@synopsys.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-7" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: Content-Language: en-US Content-ID: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-snps-arc" Errors-To: linux-snps-arc-bounces+gla-linux-snps-arc=m.gmane.org@lists.infradead.org To: "m.szyprowski@samsung.com" Cc: "robh@kernel.org" , "s.nawrocki@samsung.com" , "airlied@linux.ie" , "Liviu.Dudau@arm.com" , "dri-devel@lists.freedesktop.org" , "daniel@ffwll.ch" , "linux-snps-arc@lists.infradead.org" List-Id: dri-devel@lists.freedesktop.org SGkgTWFyZWssCgpPbiBGcmksIDIwMTYtMDYtMTcgYXQgMDc6MjggKy0wMjAwLCBNYXJlayBTenlw cm93c2tpIHdyb3RlOgo+IEhpIEFsZXhleQo+IAo+IAo+IE9uIDIwMTYtMDYtMTYgMTg6NDcsIEFs ZXhleSBCcm9ka2luIHdyb3RlOgo+ID4gCj4gPiBIaSBNYXJlaywKPiA+IAo+ID4gV2UgdXNlZCB0 byB1c2Ugb2ZfcmVzZXJ2ZWRfbWVtX2RldmljZV9pbml0KCkgaW4gc3VjaCBhIGNvbnRleHQgaW4g R1BVIGRyaXZlcnM6Cj4gPiAtLS0tLS0tLS0tLS0tLS0tLS0tLT44LS0tLS0tLS0tLS0tLS0tLS0t LQo+ID4gCS8qIEdldCB0aGUgb3B0aW9uYWwgZnJhbWVidWZmZXIgbWVtb3J5IHJlc291cmNlICov Cj4gPiAJcmV0ID0gb2ZfcmVzZXJ2ZWRfbWVtX2RldmljZV9pbml0KGRybS0+ZGV2KTsKPiA+IAlp ZiAocmV0ICYmIHJldCAhPSAtRU5PREVWKQo+ID4gCQlyZXR1cm4gcmV0Owo+ID4gLS0tLS0tLS0t LS0tLS0tLS0tLS0+OC0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+IAo+ID4gVGhlIHBvaW50IGlzIHdl IG1heSBoYXZlIGEgZGVkaWNhdGVkIHJlc2VydmVkIG1lbW9yeSBhcmVhIG9yIG1heSBub3QgaGF2 ZSAoZGVwZW5kcyBvbiBhIHBhcnRpY3VsYXIgLmR0cykuCj4gPiBPdXIgZXhwZWN0YXRpb24gaXMg aWYgcmVzZXJ2ZWQgbWVtb3J5IGFyZWEgaXMgbWlzc2luZyB0aGVuIG9mX3Jlc2VydmVkX21lbV9k ZXZpY2VfaW5pdCgpCj4gPiBqdXN0IHJldHVybnMgLUVOT0RFViBhbmQgaXQgdXNlZCB0byB3b3Jr IGxpa2UgdGhpcy4KPiA+IAo+ID4gTm93IHdpdGggeW91ciBjb21taXQgNTljZTQwMzk3MjdlICJv ZjogcmVzZXJ2ZWRfbWVtOiBhZGQgc3VwcG9ydCBmb3IgdXNpbmcgbW9yZSB0aGFuIG9uZSByZWdp b24gZm9yIGdpdmVuIGRldmljZSIKPiA+IGJlaGF2aW9yIGlzIGRpZmZlcmVudC4gb2ZfcmVzZXJ2 ZWRfbWVtX2RldmljZV9pbml0X2J5X2lkeCgpIGhhcyB0aGlzOgo+ID4gLS0tLS0tLS0tLS0tLS0t LS0tLS0+OC0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+IAl0YXJnZXQgPSBvZl9wYXJzZV9waGFuZGxl KG5wLCAibWVtb3J5LXJlZ2lvbiIsIGlkeCk7Cj4gPiAJaWYgKCF0YXJnZXQpCj4gPiAJCXJldHVy biAtRUlOVkFMOwo+ID4gLS0tLS0tLS0tLS0tLS0tLS0tLS0+OC0tLS0tLS0tLS0tLS0tLS0tLS0K PiA+IAo+ID4gU28gSSdtIHdvbmRlcmluZyB3aGljaCBwYXJ0IHNob3VsZCBiZSBmaXhlZDoKPiA+ ICtBS0EgMSkgb2ZfcmVzZXJ2ZWRfbWVtIGl0c2VsZiBvcgo+ID4gK0FLQSAyKSB1c2VycyBvZiBv Zl9yZXNlcnZlZF9tZW1fZGV2aWNlX2luaXQoKQo+ID4gCj4gPiBBbnkgdGhvdWdodHM/Cj4gCj4g VGhpcyB3YXMgbXkgZmF1bHQuIFRoZSBmaXggaXMgYWxyZWFkeSBxdWV1ZWQgdG8gbGludXgtbmV4 dCwgc2VlIGNvbW1pdAo+IDlmNWE4MDJiMWQ1MWRjODBhMjdkODI4YTVmN2RjYzhlYzRhNzJmMDMg KCJbbWVkaWFdIG9mOiByZXNlcnZlZF9tZW06IHJlc3RvcmUKPiBvbGQgYmVoYXZpb3Igd2hlbiBu byByZWdpb24gaXMgZGVmaW5lZCIpLAo+IGh0dHA6Ly93d3cuc3Bpbmljcy5uZXQvbGlzdHMvbGlu dXgtbWVkaWEvbXNnMTAwOTcyLmh0bWwKPiAKCkluZGVlZCB3aXRoIG1lbnRpb25lZCBmaXggR1BV IGRyaXZlciBub3cgd29ya3MgYWdhaW4hClNvcnJ5IGZvciB0aGUgbm9pc2UgYW5kIHRoYW5rIHlv dSBmb3IgZml4aW5nIGl0IHRoYXQgZmFzdC4KClJlZ2FyZHMsCkFsZXhleQpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1zbnBzLWFyYyBtYWlsaW5n IGxpc3QKbGludXgtc25wcy1hcmNAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5m cmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXNucHMtYXJj