From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752273AbdKZNOe (ORCPT ); Sun, 26 Nov 2017 08:14:34 -0500 Received: from mail-eopbgr00065.outbound.protection.outlook.com ([40.107.0.65]:7067 "EHLO EUR02-AM5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752245AbdKZNO2 (ORCPT ); Sun, 26 Nov 2017 08:14:28 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=peng.fan@nxp.com; From: Peng Fan To: hch@lst.de, m.szyprowski@samsung.com, robin.murphy@arm.com, gregkh@linuxfoundation.org, robh+dt@kernel.org, frowand.list@gmail.com Cc: iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, van.freenix@gmail.com, Peng Fan Subject: [RFC 2/2] drivers: dma-mapping: parse per device reserved mem at probe time Date: Sun, 26 Nov 2017 21:13:46 +0800 Message-Id: <20171126131346.12532-2-peng.fan@nxp.com> X-Mailer: git-send-email 2.14.1 In-Reply-To: <20171126131346.12532-1-peng.fan@nxp.com> References: <20171126131346.12532-1-peng.fan@nxp.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [192.158.241.86] X-ClientProxiedBy: HK2PR02CA0182.apcprd02.prod.outlook.com (2603:1096:201:21::18) To VI1PR04MB3230.eurprd04.prod.outlook.com (2603:10a6:802:6::27) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 9cd00a3d-faef-42b5-f3a0-08d534cf9e62 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(5600026)(4604075)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(48565401081)(2017052603199);SRVR:VI1PR04MB3230; X-Microsoft-Exchange-Diagnostics: 1;VI1PR04MB3230;3:8nTvwerTy8qypHRdA/6Vv6CLGUSgWNU+uOHypiODbRawBAAM3ph24LM2FPG4uxOv6cUrHes/0eGUZyaalK+Z6hZm/hcD5YPPsWZmXtA3/b1DzpvPbUdob3vb7NRZF7Eyp9nmgipYfEkqcGF8oxosITs0YdUVmS9R7AFe4CwIpQjb/MYTvd8WJFAzyO4i3iYu6CdZ4BDTiKttRRNl1QFzFHXUB4wXeGTLwClGGZSYTZdfRMZJNGJGit2GyKC/ie5m;25:zCMrumZjv/ph2SWWhoK238r6AJ0rwJ6mBQxVmGxS60ziYImeDZYMk7prBRUXfJjQy9w69CB65GItmuXKapcTOw7l6CAkLYmERuZYYk7+zq2LVN/bGd/YdmWTcrak4b9WCYShH8gPDUnHnJO1BBkf55bVE7TKUmxQ7G8z1LloQeo1Alm7dw8SlteGXO22li2W9cZVjeRfYjIPglIE9lxWlS704HHQ138sklNR9rW6mPjWh7K14oez93CCHjsMCUMt6pa/3d/0ewj0fe7orOC83ic8nHm3PbSSRCTdZiSoMttlisJgsILvJzkm2R1f8Yn2SjUeYjcpryQEPcYWhmOX2A==;31:2/SxWZZjoQ8Gofy9lhzN2i1SItenju8gLshKNguancBDxKp49bv0Gmtxx/ylEU3paApiCSC8AHX8mr0LhAYZoMLRLC9DEiQMRNMncZPjXDSllWZfdzZlDIiqySinn7u4BHgYXrNtu65746c47n84CbmJpKqopjC/k0GWH2WXxjaTfc90axOMyLwnEkt590a2vaUcWqi7TB1SihaNZQ9tmw72dmusGS/ULtKmetUkflY= X-MS-TrafficTypeDiagnostic: VI1PR04MB3230: X-Microsoft-Exchange-Diagnostics: 1;VI1PR04MB3230;20:aaw3zritOgVV7+xO3ROX5zLP76gQGh89JHR1K0Sa6C8yprWxmT0+Q7lIwqki+fLGkIICp+p3gChCdKdVlInKdiTNrawKRg6yLaIZGsQ55hZNo3ohC08R+X5vzPQEhpFeIfv1Zs+HqoCgjnZgp3fWg47HTLHz54ab68RCeG/rKE++6Hj9Xboea/gTJBNO9QpTRMM4a3rxhYXQumweZOLi4Y9/tncRcLicxNlAd0ThGQp2b/ek96dGs++i+OmU7iCmWNMQYKAsqxu3gHd87LDh6EZCCBT7R14pMppJqIdWZaZdz4j/PVWALG747rJnYTIfY3X0ajev9c788uZIRIxvOA23RBK0PGO7OYcAb1Ap2cZ4FOnUKpuSm7A40B9TU1JjQeZd3w5LFcrG20qBg0IYcKsoOgA5s4mFsimwER5g71Ur7hS1HnX38nhpaSyauKFb8YWRpJlLpEpcWzkuEEZrX2s1MlR3bIyyrPRa7F/csb8XgXg7WeaKG19NjhNnI660;4:2gT48n81CWBNz3QJoWFcDEgyuSNYvshEaFI4L2D5z6cU7UsWvmyuyHth+xYvjBebsIF+RkccAD8AopLe+Hmu2VaZJGk2KcJ1sgZLA0V6ySE/WWjsaO1sg4VJ9B3yO2LReWsSjSLboYjc64Zh6kLh+90Z1McrUnOAuVY/Evf4lkYPwXvAPzhRrHg6cwzNDOVVToBLMdik6JMvLXwXIFgk3moqp65NN8+So1iKmMCcqj+a+OHl5R9Hb4CY5zQbrO7qwmhMuGvNDHaV5ZAUZExsgz3+7DaOdNdr6PiJyCR+qtbMS20cJaAzdTt1/iNRN1RO X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(2401047)(5005006)(8121501046)(3231022)(10201501046)(3002001)(93006095)(93001095)(6055026)(6041248)(20161123555025)(20161123564025)(20161123558100)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(6072148)(201708071742011);SRVR:VI1PR04MB3230;BCL:0;PCL:0;RULEID:(100000803101)(100110400095);SRVR:VI1PR04MB3230; X-Forefront-PRVS: 0503FF9A3E X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(346002)(376002)(39860400002)(366004)(199003)(189002)(39060400002)(8676002)(16526018)(7416002)(5660300001)(2950100002)(86362001)(101416001)(575784001)(76176999)(316002)(50986999)(4326008)(6666003)(52116002)(7736002)(305945005)(97736004)(478600001)(53936002)(47776003)(6506006)(8936002)(50226002)(36756003)(66066001)(189998001)(2906002)(6512007)(51416003)(68736007)(16586007)(48376002)(33646002)(50466002)(81156014)(81166006)(1076002)(6116002)(3846002)(106356001)(105586002)(25786009)(6486002);DIR:OUT;SFP:1101;SCL:1;SRVR:VI1PR04MB3230;H:linux-u7w5.ap.freescale.net;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;VI1PR04MB3230;23:fZTkAa3JLw7rulDqRdbz9+OVAUWwry/CeX76mheV6?= =?us-ascii?Q?femMF3RKkmZ3L4pJpE51uptJv5YSyYijpq61AXg5dkugf+FZDnMS/IXPbHr5?= =?us-ascii?Q?zufzGzI3QMaVP9oP6ek3mGfbYIDD3+6esK3+RRmZ84NzAIaeLnLW9Q1TEvmn?= =?us-ascii?Q?l9c5sSED1fnoYdnvdWtXJbnF3AeULKIzSYYgaFiXaM3ytFwJycaBOGQ4Wlqu?= =?us-ascii?Q?tjiAsUPTuQGc7/KKgNkfSXiSqAm8M2JWcRwznUk9e3BVXnzq8R303ls4tfZu?= =?us-ascii?Q?mbDPtM1FRw168IpwCA/xrv+8fIPf7Lnxk3Y24+zBWKd4bq7FwtQt4PlcrA4Y?= =?us-ascii?Q?S9ZtzoM/nsyChoUG4VqUOPrtwDYPeJ8xqcsQ8wz6cMR973PBz96/sTGXFIrL?= =?us-ascii?Q?hDiMktI6H0f8lifJdLol/HLVotvW0O7ygnXh8cHRAuyGl7XU4FlUR7Egvgyj?= =?us-ascii?Q?Y73P4mJuSvP6TIwDnlPLClVXvgt4tX0DePOS4ZYBM1w9yuei1z3fT7+/k1wz?= =?us-ascii?Q?uqhP4wNUBb7Vx5z0TkSm68hD81CFleCEGyaGN7F03BERDzCa/waN+kfiHOhr?= =?us-ascii?Q?2qNVqf8SmFN+TMf1KMHi74T2E6B7ACWT5/lFBU9t20C/8NpAFiIijdEuh/7m?= =?us-ascii?Q?mNYPw/jh5GTclsXW1iBErEfoNDrKKGoP5a0joY1Ul2Fv0TA2ajUmonDCXxGn?= =?us-ascii?Q?KfITtnRG0LI1/CCUhlAKQuzOPSi2vn1VSDhUXZZQLNP4F/hun3CrPfhnKIdb?= =?us-ascii?Q?MrF99iZI9MI9TUu468SURBmhQ3McvNaRartdRh2sD3fvrMbun92YJVMzlYCO?= =?us-ascii?Q?Cp6XVdwcb7wQm5uk/mKmSSNrtQn2FBDCQt4xp5cU9DOwUBygOWIjgnZPuuRp?= =?us-ascii?Q?KNBr3ujtZLQOAQ6/5YQqR9+Z2HzZkUM5ui9Wgcp0pJfFQDCjrI4PI8wVgP1g?= =?us-ascii?Q?w2vFeJCfj/s86cHLc5/h44YPbg2FA6vefL16oiwgbbk/L0t+EOQo9ZCvGEKh?= =?us-ascii?Q?f5dNgt1dhh3C/xx2zcVyKr+rK5QfH/nR1whXcAgLfxO7GmseGlWlbIuObA5N?= =?us-ascii?Q?JW48vPL98q5QsA1C3i1zPsBx2vSpmQiiTSCqmU2K/XrFNY8L4MSQKg02MWhK?= =?us-ascii?Q?UYcZNOkR82rZj55kL9QDxhvRvulTTkqq2ntn5xlhSHDjrw7b/+1UAPJSJVfE?= =?us-ascii?Q?GlhPgvdvq5DR2A=3D?= X-Microsoft-Exchange-Diagnostics: 1;VI1PR04MB3230;6:2ApVB0HXShqXeEu3B/y6BzbGD2JL0lyH0k4mDhf//6J2X1O+NJ1W9gS4X29E9hwrK3Yl1JcgKF2kDlnFNoKCb0cjjFfduX9MSHn6QvisCMBRDxatzPqZ9FiRqe50yVcy2xnmTVe26oSeWnB2VwitiQOSZff92CsbOmsmJOqlgwVzutBZSeF83Ee0IZCEmg05LQRTys8Wn6Z55KjmXm9MCyLzY4qc+9LmAG8XxMS+mzjL96dipdNhOMosGSPNNKEb9ktd6fWlRwCvmiUdra7C9cGphEy/8drophfNXFQxPQ9TTCLhgQLQrkoWfjoUNHAEjA7Pr1dyTCKMuTwtwHPtqauM8VpRJ0aUeFWqGwHnXNg=;5:14L/YWwL4jQCcykeOJ3Nz26JbUw1YwvIUNE2h1VmVKiMnc8+LPwGf1TN6ke38jMo1tWK2plFNqxly5cZSMp4L5khWcK2IDU6y0orUxP/UIjppcj5xvRVD0/l+9bGtGU2PViTmB8KmjlA7pmnZ2x2nO39rFI1j0H+0P+Zxzjz0rQ=;24:yk5roiRjXs7nQ4JmtOBa7OkQcy9BiVPC2VaV3qIrwYZdzh2qO4B1FZgBjrMw0uvrkKKAygap+w7RDm1kWOWkVqaiEV4+ugvxGDWzwZmaJoA=;7:eUR1tCrsktxgW4KepLHKV3kxdGELfvHmSlIpBo63p8zEI4ofbeWV1MO/fm4Q36JZKaF/mRP9HwWRyW0ssgb6teM7LHAub/E71K2tQgT2+LpsRMRFGhvqyqCyzNRNlEyAnbhH7pgyNSLWxg0D5kasB7W7oMZrGvfUWdO4K9PtJgVgaPjFad9Ulg6O/1QYQeY8ITy/LEqrFJ0z0Et2jYfCSBMLjqzESatc1dzkuyM+ivkTWQg3NSZUbeujoVAgk4CN SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Nov 2017 13:14:21.0295 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9cd00a3d-faef-42b5-f3a0-08d534cf9e62 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB3230 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Invoke of_reserved_mem_device_init at dma_configure, then there is no need to call of_reserved_mem_device_init in device specific probe function. Signed-off-by: Peng Fan --- drivers/base/dma-mapping.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/base/dma-mapping.c b/drivers/base/dma-mapping.c index e584eddef0a7..55dca06a7b55 100644 --- a/drivers/base/dma-mapping.c +++ b/drivers/base/dma-mapping.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include @@ -351,7 +352,9 @@ int dma_configure(struct device *dev) } if (dma_dev->of_node) { - ret = of_dma_configure(dev, dma_dev->of_node); + ret = of_reserved_mem_device_init(dev); + if (ret) + ret = of_dma_configure(dev, dma_dev->of_node); } else if (has_acpi_companion(dma_dev)) { attr = acpi_get_dma_attr(to_acpi_device_node(dma_dev->fwnode)); if (attr != DEV_DMA_NOT_SUPPORTED) @@ -367,5 +370,6 @@ int dma_configure(struct device *dev) void dma_deconfigure(struct device *dev) { of_dma_deconfigure(dev); + of_reserved_mem_device_release(dev); acpi_dma_deconfigure(dev); } -- 2.14.1