From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751605AbbJDHZg (ORCPT ); Sun, 4 Oct 2015 03:25:36 -0400 Received: from mail-by2on0147.outbound.protection.outlook.com ([207.46.100.147]:56832 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751547AbbJDHZb (ORCPT ); Sun, 4 Oct 2015 03:25:31 -0400 X-Greylist: delayed 904 seconds by postgrey-1.27 at vger.kernel.org; Sun, 04 Oct 2015 03:25:31 EDT Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=freescale.com; freescale.mail.onmicrosoft.com; dkim=none (message not signed) header.d=none;freescale.mail.onmicrosoft.com; dmarc=none action=none header.from=freescale.com; From: To: , , , CC: , , , , , , , , , , , Itai Katz Subject: [PATCH 1/5] staging: fsl-mc: abstract test for existence of fsl-mc bus Date: Sun, 4 Oct 2015 10:09:50 +0300 Message-ID: <1443942594-7189-2-git-send-email-itai.katz@freescale.com> X-Mailer: git-send-email 1.7.7.4 In-Reply-To: <1443942594-7189-1-git-send-email-itai.katz@freescale.com> References: <1443942594-7189-1-git-send-email-itai.katz@freescale.com> X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BY2FFO11FD037;1:SKvzhBBs6KiGUMyINkXfWXVn6MuZawAgCdDKmurTD8VMV8TcFpwbxKYKft5I2k8sca/5hqkxC3mMIMh06jY6BtzhIvJuiqE1u5MOalRVFN4a9YZK2plkMeFKcakB00WBY8ZHtKgti7EvfA13+lx1YX5H7lw9mQHgom5Mbx05DdaZGh+aTjijslTH48bPHaT+W0TV8aZKUuxbBLgqU2egh7oRRaj+WyHPNZ9vAvVDF54xHHwP0zDZ4IkaNWLwUWZP+MWGp0jshXuCOl6NPO5B/wGYb1m4XEHRCMif+DGIucLNrqr4cujB6UmmY6B5U9tRH98VZodsTTmR95DQuT/Hl+FXy1bigcYoy3uFaIq51BK8zx4gJrdqpJJ+V5S9eQjFdlxzQBUj1u8xbjTIOWIS+A== X-Forefront-Antispam-Report: CIP:192.88.158.2;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(2201001)(5003940100001)(85426001)(104016004)(87936001)(189998001)(5001960100002)(107886002)(6806005)(50226001)(106466001)(105606002)(229853001)(69596002)(76176999)(86362001)(33646002)(47776003)(64706001)(68736005)(92566002)(36756003)(5007970100001)(2950100001)(77156002)(62966003)(4001540100001)(5001860100001)(97736004)(5001770100001)(81156007)(5008740100001)(5001830100001)(11100500001)(48376002)(50466002)(19580405001)(19580395003)(46102003)(50986999)(86152002)(4001430100001);DIR:OUT;SFP:1102;SCL:1;SRVR:BY2PR03MB508;H:az84smr01.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;MX:1;A:1;LANG:en; MIME-Version: 1.0 Content-Type: text/plain X-Microsoft-Exchange-Diagnostics: 1;BY2PR03MB508;2:UMTdTVNUrg9lW1NQYqTGqNJf7J6C+vWguWolRsVjyaXNTja0apR4uJBONkra1wLPpdIjYR6BIBc8ZhqBA1WyqE4N39Agm4gy1u+jwX45+vJ9Wg1OualIIZu5edINnziApRLwFS1YGrcE/55Tn1gMPcqKWEMnShpGnkIrcFMibHw=;3:yQsES6FkHTA6VRnv1nDcCUng8zfQYzdap5BYFbu7AdeHU4hgq/mQ/y3wdbR/CaWwkAaR1mhfRLhGiRpwjNP0ETbin7M845bPpM6WDns6zzkLGtLk06gL3vnUe/CKiOgPg9cOFXJ9iPK+LBRw0S6am4wdygyMDeZ8AlYhVugUZRrlvLR3iTtitqcwMkc6r2El0/tv+hImxQuCHAv0BqohKW/WGI8eRtKMyRGu2VPJP5I=;25:ajN8flelL4DkitWf6/Z9S1nCTY0bQKfG8l87nsFXlhiOeJ1ANbQutZXnEWVJqk8m8AK5NnkaM4f0d38gMR4KbN9+Sfc3Ti1W6me2XIRXrc6TmpjJ6E1zTJMg8+YTiPkM+R7W0ayK2cucsCRB/hY436z4wuI8N1GH0pjAJMV0/83MqvgKbBulXtxU/JWFtpO5+Ag3aHsICc+gXtvaTKrO5Om9Z5JiaT0ckto6axTsYWWXg5juau9S44tGOqQOMbwqPmDgIYQF+FqTFoKGLdVe9w== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR03MB508; X-Microsoft-Exchange-Diagnostics: 1;BY2PR03MB508;20:GREPNzS3o1dpRhN9qtvnvwWgTY7QPbPsUG0x8jPtr7I4ySlQOFE9hfmJg+GA99Kt4zeEatiCklgiHkU6FLOXmCFlyHEMJJYJwjRLkeEpMkVtPeUHOEL5GJBhuYDo2WjsKTFQ3QbpAbFgp3V76qitUiQYh4EepmZpNjL7iImGlZPg3KOSSUSZ6cF22sjE94C0G6RF8kmrI2nlCV8BoOUvT6dJjnL36B6JiNk59OMO9RTkMGDQOuviv/DMBCfqPGPznlaLJ2t774CltafQ70IlKA9dqyehCUnb68HijQ9iB1J/tmnLEMAUYTEcqH4b31FPByGKIsl/wPFOCoxl5XvmHpuw9ku9398VRPWyspZY8ZQ=;4:UYEvb1QRuUo82N2xlTi8O7ThBITmEflGMWigLxIzbYEwggg8iQ/CKtyzKhi9oP+mTLQG5jQMPIty17G5XlwHQ1Q10wSYpU9IusGK+Tpdyd5LXVc5KOBKlyd/Ir07Ab1PLY+vOn3c7JQCxPa0r1HvH30aBb3Rf2TTBIQgrj6so2B1lRDpv6tvunbIBUR+hJxDsds90ifrB0TSL0GZ0kQkn/aNx2iXzhmpXbJ5p80whssu/NCSSytPJH8pWCYyEd7ATEFuGTGihZQhs9LHowzrFALeB2RNQp0+VMs9ueiKA76oljLcFs03R4R+CZDAf4YzC6+aPK5JaXT67pzB4swhTj3vzkk4H6wOjxYUPJdpsFc= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(520078)(8121501046)(3002001);SRVR:BY2PR03MB508;BCL:0;PCL:0;RULEID:;SRVR:BY2PR03MB508; X-Forefront-PRVS: 0719EC6A9A X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BY2PR03MB508;23:UQQNz7n7IOGVvvV1FmLOhJ7RW0rvxpJcYBC5KdzAUH?= =?us-ascii?Q?uMdHIARS3DJwdy32NMGEDindeEneJnTa4tciaqENGN0KDKDSngIw6qpTzxED?= =?us-ascii?Q?TeZ3eWCxu5R+Xfy43YwOtdNGOdh2sWAUUGQ2aw2RqxwduWP8Gz5iEgA/UB7t?= =?us-ascii?Q?MevWOrCZ1vIzw2CygGZtEjKbgwUGt0E4kpDpymAFa0EdB6nJ2kE/q1jeXJH2?= =?us-ascii?Q?zqhy0ok/Arxhr3MaDiqXsoCODUYcl3fwKCgzpXJJmlGcVRtd5lL23A/Ig4lA?= =?us-ascii?Q?J2ZUcsBT5tp1pONg/U961zgEaZ9uhOWLTjeGXlUFPmWztitW4M2JtnQ3Kd4X?= =?us-ascii?Q?TMtOfvtsCoAeutwHMZ2Nla1DAaB+5i2wInBbkiYofylOSvuLlAWYDmuIUlki?= =?us-ascii?Q?rU1DEiz9uhGReGpZzjIz7gEBOvEXe+jGJyc8nZWRc+qjxYEXC1LYZ9cUgikz?= =?us-ascii?Q?z1r+ehwL72EhLoeq0jOblvy81ktsEUfcmu/hIESi3IGBov8Bd+9xmjIjhG7k?= =?us-ascii?Q?pNRpUtGVLHw833bgvBRuMnFPjTTfKNimTpATeO0jEJfu+VlsGWTvIcHKWPSf?= =?us-ascii?Q?3gjv9GdylpsSqyFxX+ui5aV9aHpEke1xN43GC+9dkeMce43HPcBS9qVgrcK7?= =?us-ascii?Q?x6JjAoOtEO2e8YvhNbqDmJnVx4CkrVm/+KqDuA2/TnedZVzZP0spOAD8qLyx?= =?us-ascii?Q?+Dpv2vgq3wEf37UBOv+sT/GKHr32pRaDRrtCpCBmlH3pBuZMGOur8Rux1M0g?= =?us-ascii?Q?6dHy/YaJIHNulRj91ShYmp9AwyJz70YGl1D2PAQPXviuCUf/4Xh4u9TtX7Bh?= =?us-ascii?Q?UK4kPRS0FCZSncotCX3KUn1wO4hWniRKDNevUEYj0Ym00BCdcPCyoFExhQm0?= =?us-ascii?Q?KDrebtIV9ktNUZHZgDIeO8ZNKd6KBk2uhpmcvb/JEzHsSr4H1QLPAN3VMXTs?= =?us-ascii?Q?mHvu/zxxvdYH+BhmcNCUr7WNbpQW23MQuBsqYK2D4+5ZhN8YBDlFQCQa6qTj?= =?us-ascii?Q?xF3MCDFgAT5rwPM9be7/BSC8REYQG7l8Ttohu/FTcgvWqAHDrEjjvGSvSo3J?= =?us-ascii?Q?7n4VoxVOIFzraaE5EbqWfDND5X4fP+z/haoNLuO87h4Wd7lr1UFr8j6jyvPQ?= =?us-ascii?Q?qpyXrqLGU9qpL8uGhfZpA5tLlcDuoszAuZRDjsjiNBczjXwzB7yLZuNZjmRD?= =?us-ascii?Q?Z9t5+gdU7MSOn7YpsE+owJScfNreZao4vv5lmE4JVar3Ghn3nQOm8XiuFSqk?= =?us-ascii?Q?yqyl86r+NBXnpPmrZJt6DtjHT3UC+AD1khqFOoxuptfg+7Y7vdyV10UXcl+z?= =?us-ascii?Q?P2ivVyYOT1HBduEA3mcjt1taeS+EZbeh/iaEorFj5I?= X-Microsoft-Exchange-Diagnostics: 1;BY2PR03MB508;5:BW2jTlEd52cP1KnKjOZWIsT8evW6MAHRaLDvtGuivhXZ/mBTuw8d3+fy9kH3vNETcySaQoJClSIHEsAQ8NVaoK1NdwkxfVl/Pn2mTQW/1QkntmM7VW3XGEzwjEsS7s38iLucl7pta+qfAqmvVn3JpA==;24:SUvUlJ6VU8Pd0P90bXe39UBOw+DVxMd9iWXlegG8ceTH/1YJdy11stmaMSfJvRnis/32RE6GzS1WYizRsxferO6rdSn5gbpv7ZpnJuD7cHQ=;20:PCTHuD3ZPUr75HVRmbVe58Ol/z713zCaNytSF/plJQIt7beXgebelggFlRaX/q9tCRSIzgthnSfOvMGMCNI9Cg== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2015 07:10:35.7460 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d;Ip=[192.88.158.2];Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR03MB508 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Itai Katz Add function to test for existence of an fsl-mc bus instance instead of doing this by looking directly at a field in the bus type struct. Signed-off-by: Itai Katz --- drivers/staging/fsl-mc/bus/mc-bus.c | 13 +++++++++++-- drivers/staging/fsl-mc/include/mc.h | 2 ++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/drivers/staging/fsl-mc/bus/mc-bus.c b/drivers/staging/fsl-mc/bus/mc-bus.c index 92e0702..2aaeb3a 100644 --- a/drivers/staging/fsl-mc/bus/mc-bus.c +++ b/drivers/staging/fsl-mc/bus/mc-bus.c @@ -39,7 +39,7 @@ static int fsl_mc_bus_match(struct device *dev, struct device_driver *drv) bool major_version_mismatch = false; bool minor_version_mismatch = false; - if (WARN_ON(!fsl_mc_bus_type.dev_root)) + if (WARN_ON(!fsl_mc_bus_exists())) goto out; if (!mc_drv->match_id_table) @@ -206,6 +206,15 @@ void fsl_mc_driver_unregister(struct fsl_mc_driver *mc_driver) } EXPORT_SYMBOL_GPL(fsl_mc_driver_unregister); +/** + * fsl_mc_bus_exists - check if a root dprc exists + */ +bool fsl_mc_bus_exists(void) +{ + return fsl_mc_bus_type.dev_root; +} +EXPORT_SYMBOL_GPL(fsl_mc_bus_exists); + static int get_dprc_icid(struct fsl_mc_io *mc_io, int container_id, u16 *icid) { @@ -407,7 +416,7 @@ int fsl_mc_device_add(struct dprc_obj_desc *obj_desc, mc_io2 = mc_io; - if (!fsl_mc_bus_type.dev_root) + if (!fsl_mc_bus_exists()) fsl_mc_bus_type.dev_root = &mc_dev->dev; } diff --git a/drivers/staging/fsl-mc/include/mc.h b/drivers/staging/fsl-mc/include/mc.h index 860bf26..a933291 100644 --- a/drivers/staging/fsl-mc/include/mc.h +++ b/drivers/staging/fsl-mc/include/mc.h @@ -182,6 +182,8 @@ int __must_check __fsl_mc_driver_register(struct fsl_mc_driver *fsl_mc_driver, void fsl_mc_driver_unregister(struct fsl_mc_driver *driver); +bool fsl_mc_bus_exists(void); + int __must_check fsl_mc_portal_allocate(struct fsl_mc_device *mc_dev, u16 mc_io_flags, struct fsl_mc_io **new_mc_io); -- 1.7.9.5