From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753433AbcEPKGp (ORCPT ); Mon, 16 May 2016 06:06:45 -0400 Received: from mailout1.samsung.com ([203.254.224.24]:50778 "EHLO mailout1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751013AbcEPKGn (ORCPT ); Mon, 16 May 2016 06:06:43 -0400 X-AuditID: cbfee68f-f79d26d0000014f6-92-57399bb02531 Date: Mon, 16 May 2016 10:06:40 +0000 (GMT) From: Jaewon Kim Subject: [PATCH] drivers: of: of_reserved_mem: fixup the CMA alignment not to affect dma-coherent To: robh+dt@kernel.org Cc: r64343@freescale.com, m.szyprowski@samsung.com, grant.likely@linaro.org, jaewon31.kim@gmail.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org Reply-to: jaewon31.kim@samsung.com MIME-version: 1.0 X-MTR: 20160516100356572@jaewon31.kim Msgkey: 20160516100356572@jaewon31.kim X-EPLocale: ko_KR.euc-kr X-Priority: 3 X-EPWebmail-Msg-Type: personal X-EPWebmail-Reply-Demand: 0 X-EPApproval-Locale: X-EPHeader: ML X-MLAttribute: X-RootMTR: 20160516100356572@jaewon31.kim X-ParentMTR: X-ArchiveUser: EV X-CPGSPASS: Y X-ConfirmMail: N,general Content-type: text/plain; charset=euc-kr MIME-version: 1.0 Message-id: <1931335297.775331463393198643.JavaMail.weblogic@ep2mlwas08b> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrEJsWRmVeSWpSXmKPExsVy+t8zbd0Nsy3DDa6u0Le4vGsOmwOjx+dN cgGMUQ2MNimpOZllqUX6djaJRckZQKZCal5yfkpmXrqtUmiIm66FkkJGfnGJrVK0kYGxnpGp iZ6RibmepUGslZGpkkJeYm6qrVKFLlSvkkJRcgFQbW5lMdCAnFQ9qLhecWpeikNWfinITXrF ibnFpXnpesn5uUoJ8xkz5j/Zzl5wj7fi8tojbA2Ma3i7GDk5hATUJV7fWcEMYksImEgcOXOP FcIWk7hwbz1bFyMXUM0yRokPK27CFa1b2cgIkZjDKHHk1mH2LkYODhYBVYkDazNBatgEdCQm vZ3GDmILCyRKdBxczgZiiwhISzybMJMZpJdZYC+jRPfqS4wgvUICShKbblqB1PAKCEqcnPmE BWKXqsTdXRPYIOJqEk+al0HdICExa/oFqEN5JWa0P4Wql5OY9nUNVI20xPlZGxhhnln8/TFU nF/i2O0dTBC2gMTUMweharQkbt26ClXDJ7Fm4VuomYISp691M8Psatj4mx3mhq0tT8BuYBZQ lJjS/ZAdwtaS+PJjHxu6X3gFPCXm7WoEB6iEwA0OiQuffzJOYFSahaRuFpJZs5DMQlazgJFl FaNoakFyQXFSepExciRvYoSkwv4djHcPWB9iVOdglBItzStOTszLS0zKSY3PTcxJyy/KTU1R 4uEV+GYRLsSaWFZcmXuIMRkYexOZpUST84HpOa8k3tDYzMjC1MTU2Mjc0gxD2MTUwsLECIew kjjvQqmfwUIC6YklqdmpqQWpRfFFpTmpxYcYmTg4pRoYj91unCT0xu2uts5M47Zgi13c+vbh W8OlOXRj72zRm9HE2R3xV8tTtODDp+mblgldc4qY+GSX7eElSma+gs/KeMwXPRB8vDi/59au uMi2h++F8muNoq+51x3fz+19/7DEgv21xw5+VzT59WmBvuQOzq48uamv9fTqJQ0Yhb+wuRes UbeYt/m3EktxRqKhFnNRcSIAv5VKUcUDAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrKKsWRmVeSWpSXmKPExsVy+t/tXt0Nsy3DDc7f1La4vGsOmwOjx+dN cgGMUUU2Kak5mWWpRfp2NhmpiSmpRQqpecn5KZl56bZK3sHxzvGmZgaGuoaWFuZKCnmJuam2 Si4+AbpumTlA45UUyhJzSoFCAYnFxUpAE4ryS0tSFTLyi0tslaKNDIz1jExN9IyMDfRMDGKt DA0MjEyBqhKKMuY/2c5ecI+34vLaI2wNjGt4uxg5OYQE1CVe31nBDGJLCJhIrFvZyAhhi0lc uLeerYuRC6hmDqPEkVuH2bsYOThYBFQlDqzNBKlhE9CRmPR2GjuILSyQKNFxcDkbiC0iIC3x bMJMZpBeZoG9jBLdqy8xgvQKCShJbLppBVLDKyAocXLmExaIXaoSd3dNYIOIq0k8aV4GdY+E xKzpF1ghbF6JGe1PoerlJKZ9XQNVIy1xftYGuJsXf38MFeeXOHZ7BxOELSAx9cxBqBotiVu3 rkLV8EmsWfgWaqagxOlr3cwwuxo2/maHuWFryxOwG5gFFCWmdD9kh7C1JL782MeG7hdeAU+J ebsa2SYwys5CkpqFpH0WknZkNQsYWVYxiqYWJBcUJ6VXmOgVJ+YWl+al6yXn525iBKenZ0t2 MDZcsD7EqM7BKCVamlecnJiXl5iUkxqfm5iTll+Um5qixMMr8M0iXIg1say4MvcQowrQqkcb Vl9glGLJy89LVRLh/T/TMlyINyWxsiq1KD++qDQntfgQoykwXicyS4km5wMTcF5JvKGxgbGh oaW5gamhkYWSOG/A33VhQgLpiSWp2ampBalFMH1MHJxSDYwFV2Pc7TZMzOz0sD7hkeqjsr4x /HxrKceU/PSutN+zvk5qMAh2jw7VujI7s2Jr90M+e0uL7XIhEkah589bvTzVvPVe5x77YE8J o6plyhpMX/KPrF90eJ2FWlBfRaTzk5bliolcmy67bv4qw/lAb6fbitTtsoE1V2IPHN+84Y7s QoPDhqd+TFRiKc5INNRiLipOBAAYjlufiAMAAA== DLP-Filter: Pass X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id u4GA6nb1013657 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 --- 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);