From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753399AbcEYE3z (ORCPT ); Wed, 25 May 2016 00:29:55 -0400 Received: from mailout4.samsung.com ([203.254.224.34]:57243 "EHLO mailout4.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752841AbcEYE3x (ORCPT ); Wed, 25 May 2016 00:29:53 -0400 X-AuditID: cbfee690-f79056d000001327-8d-57452a33e65a From: Jaewon Kim To: robh+dt@kernel.org Cc: r64343@freescale.com, m.szyprowski@samsung.com, grant.likely@linaro.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, jaewon31.kim@gmail.com, Jaewon Subject: [RESEND][PATCH] drivers: of: of_reserved_mem: fixup the CMA alignment not to affect dma-coherent Date: Wed, 25 May 2016 13:29:50 +0900 Message-id: <1464150590-2703-1-git-send-email-jaewon31.kim@samsung.com> X-Mailer: git-send-email 1.9.1 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrILMWRmVeSWpSXmKPExsVy+t8zLV1jLddwgyktRhYH/uxgtOjePJPR ovf9KyaLy7vmsFncW/Of1WLtkbvsFm9OH2ayaN17hN2Bw+Pf4X4mj52z7rJ7bFrVyeax6dMk do871/awefRtWcXo8XmTXAB7FJdNSmpOZllqkb5dAlfG4e+f2Qr2cVUse3qMtYHxLUcXIyeH hICJxPytG5kgbDGJC/fWs3UxcnEICaxklOifcZYZpuhS/ypGEFtIYCmjxJF50hBFPxklOo40 gnWzCWhLvF8wibWLkYNDBGjS3rWiIGFmgT2MEgf+RIHYwgLZEi/OtLCB2CwCqhJr/k5jAbF5 BdwlZhw/zgqxS07i5LHJrCDzJQTmsUvcnP+HHaJBQOLb5EMsIPMlBGQlNh2Auk1S4uCKGywT GAUXMDKsYhRNLUguKE5KLzLRK07MLS7NS9dLzs/dxAgJ6Qk7GO8dsD7EKMDBqMTDu2O1S7gQ a2JZcWXuIUZToA0TmaVEk/OBkZNXEm9obGZkYWpiamxkbmmmJM77WupnsJBAemJJanZqakFq UXxRaU5q8SFGJg5OqQbGQOPu47VsOxqP1mesTr1Wo3yvadf2fx8mHU1fmJcUu2mumeiukMfn Q4wUj048PP/FNqcVl8R+PLR3TD94WTj52KWjZ66EzLrUyuLW5OP/cFID6/YtXtu0Wt1uygQ4 rnb3XsI/7ZeK96Lp9oX9O94tW9el+LrGfl3dQzefXQ7Lvd/2Xb/7PdL0pRJLcUaioRZzUXEi AIcLUFdkAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprHIsWRmVeSWpSXmKPExsVy+t9jAV1jLddwgyebdC0O/NnBaNG9eSaj Re/7V0wWl3fNYbO4t+Y/q8XaI3fZLd6cPsxk0br3CLsDh8e/w/1MHjtn3WX32LSqk81j06dJ 7B53ru1h8+jbsorR4/MmuQD2qAZGm4zUxJTUIoXUvOT8lMy8dFsl7+B453hTMwNDXUNLC3Ml hbzE3FRbJRefAF23zBygs5QUyhJzSoFCAYnFxUr6dpgmhIa46VrANEbo+oYEwfUYGaCBhHWM GYe/f2Yr2MdVsezpMdYGxrccXYycHBICJhKX+lcxQthiEhfurWcDsYUEljJKHJkn3cXIBWT/ ZJToONLIBJJgE9CWeL9gEmsXIweHCFDD3rWiIGFmgT2MEgf+RIHYwgLZEi/OtIDNYRFQlVjz dxoLiM0r4C4x4/hxVohdchInj01mncDIvYCRYRWjRGpBckFxUnquUV5quV5xYm5xaV66XnJ+ 7iZGcNw8k97BeHiX+yFGAQ5GJR5egXUu4UKsiWXFlbmHGCU4mJVEeDeruoYL8aYkVlalFuXH F5XmpBYfYjQFOmAis5Rocj4wpvNK4g2NTcyMLI3MjE3MjY2VxHkf/18XJiSQnliSmp2aWpBa BNPHxMEp1cAYdHIv25w6P37eK7k5y9O+LekTWNtgoqdwRinozOWtHyR8gj54HFnjIh8cnJip v7prqpic9+WzsZm+v3Pnpru6dCpwzdD4fF1g/TmVydbO5rsaLi+oW2pTE893vvTl6Y9xIhu8 Wd51i7y5mzD1stmDJSF5lpMfq4c+8t94dHJu58IJaqelNh1TYinOSDTUYi4qTgQATQbT6bEC AAA= DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Jaewon There was an alignment mismatch issue for CMA and it was fixed by commit 1cc8e3458b51 ("drivers: of: of_reserved_mem: fixup the alignment with CMA setup"). However the way of the commit considers not only dma-contiguous(CMA) but also dma-coherent which has no that requirement. This patch checks more to distinguish dma-contiguous(CMA) from dma-coherent. Signed-off-by: Jaewon Kim --- drivers/of/of_reserved_mem.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/of/of_reserved_mem.c b/drivers/of/of_reserved_mem.c index ed01c01..45b873e 100644 --- a/drivers/of/of_reserved_mem.c +++ b/drivers/of/of_reserved_mem.c @@ -127,7 +127,10 @@ static int __init __reserved_mem_alloc_size(unsigned long node, } /* Need adjust the alignment to satisfy the CMA requirement */ - if (IS_ENABLED(CONFIG_CMA) && of_flat_dt_is_compatible(node, "shared-dma-pool")) + if (IS_ENABLED(CONFIG_CMA) + && of_flat_dt_is_compatible(node, "shared-dma-pool") + && of_get_flat_dt_prop(node, "reusable", NULL) + && !of_get_flat_dt_prop(node, "no-map", NULL)) { align = max(align, (phys_addr_t)PAGE_SIZE << max(MAX_ORDER - 1, pageblock_order)); prop = of_get_flat_dt_prop(node, "alloc-ranges", &len); -- 1.9.1