Commit 0a727b45 authored by Xianting Tian's avatar Xianting Tian Committed by Dmitry Baryshkov
Browse files

drm/msm: Fix wrong size calculation



For example, memory-region in .dts as below,
	reg = <0x0 0x50000000 0x0 0x20000000>

We can get below values,
struct resource r;
r.start = 0x50000000;
r.end	= 0x6fffffff;

So the size should be:
size = r.end - r.start + 1 = 0x20000000

Signed-off-by: default avatarXianting Tian <xianting.tian@linux.alibaba.com>
Fixes: 072f1f91 ("drm/msm: add support for "stolen" mem")
Reviewed-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20220112123334.749776-1-xianting.tian@linux.alibaba.com


Signed-off-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
parent 170b2223
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -461,7 +461,7 @@ static int msm_init_vram(struct drm_device *dev)
		of_node_put(node);
		if (ret)
			return ret;
		size = r.end - r.start;
		size = r.end - r.start + 1;
		DRM_INFO("using VRAM carveout: %lx@%pa\n", size, &r.start);

		/* if we have no IOMMU, then we need to use carveout allocator.