Re: of_reserved_mem_device_init_by_idx() returns -EINVAL if "memory-region" is missing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux