From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Google-Smtp-Source: AIpwx48VbAZGGshqU44pa/5U3Su1b4wd+1u5YW8c6gByLr3OFOXkXrklwTpvhysXMGzNdRQmNRrp ARC-Seal: i=1; a=rsa-sha256; t=1523343257; cv=none; d=google.com; s=arc-20160816; b=pcZy5kSmkvGES6u2204i1VRwAYgkwi+jKxxrw4g+uEvgE+2G6ktG6ZYU5sm8SK8PUz fCOruS8Iu87UxcIFQUoopFBFpeKfM3+Ywnoa9l1vx+mqOSgEiXgJvbKkITgYJt2/MU1Y 2fjlwOXam26o9VYvOfnB4UtsISbZIwYb9J6tWpS+pCbZcjWJVP+p10XDhOUMWKVgpZvE rt3tIIoIw2S15ff76Vv7dJ11Oxu3E9FX6Q3NMD418SLQWPU5axiIE0djTYTbF4AiKY/W b6Dl9mu9TVad/U48BqeOlLDIKLUwdvYOjsHjXbTPlvvqxtPaDOe3n4Omd0UitUAcaQbP 9+lQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=spamdiagnosticmetadata:spamdiagnosticoutput:date:mime-version :references:in-reply-to:cc:to:user-agent:subject:from:message-id :dkim-signature:arc-authentication-results; bh=xCPWQ3UZMx9y070Fj6KLRHfJln0JDXA6vUpxEd/thfE=; b=KJ/aPOlQAQnfV8yErS2Zs0J1z/opJOMOUuUE9LCwQVOmU5v4IM1wdadkgIY1v9+hH9 Vu6sLqyAs2uEvC982EFzXQLQXgBLRvidpgXeRT39lH37Rvz9ydcNYEaI6sAHCGC+/2wO o4V+UeT4Q1gRjXMkThNhoCyvN2X+gXFnkfTBZNkjscJQ5/tVOfehwssxkk46OKyzc3iU UpJfh0dIty0qVhJUVhwsblt6DopDs3PMLnn8td5vt7VE8ktGwYaVNzws3UdjYelRzYaB dtLCHABRWfFRaHIQfvR0u2xG+4BKlv55nwODbiBcntzs+6x0i8k/3b0juUCrcFydoCy7 aq/A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@renesasgroup.onmicrosoft.com header.s=selector1-renesas-com header.b=DilQrqHO; spf=pass (google.com: domain of kuninori.morimoto.gx@renesas.com designates 210.160.252.174 as permitted sender) smtp.mailfrom=kuninori.morimoto.gx@renesas.com Authentication-Results: mx.google.com; dkim=pass header.i=@renesasgroup.onmicrosoft.com header.s=selector1-renesas-com header.b=DilQrqHO; spf=pass (google.com: domain of kuninori.morimoto.gx@renesas.com designates 210.160.252.174 as permitted sender) smtp.mailfrom=kuninori.morimoto.gx@renesas.com X-IronPort-AV: E=Sophos;i="5.48,430,1517842800"; d="scan'208";a="276337651" Message-ID: <878t9vv9jv.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto Subject: [PATCH 2/2] of: add of_node_read() User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 To: Greg Kroah-Hartman , Rob Herring , Frank Rowand Cc: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org In-Reply-To: <87bmerv9ll.wl%kuninori.morimoto.gx@renesas.com> References: <87bmerv9ll.wl%kuninori.morimoto.gx@renesas.com> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII Date: Tue, 10 Apr 2018 06:54:13 +0000 X-Originating-IP: [211.11.155.138] X-ClientProxiedBy: OSAPR01CA0013.jpnprd01.prod.outlook.com (2603:1096:603:2a::25) To OSAPR01MB2068.jpnprd01.prod.outlook.com (2603:1096:603:18::15) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(48565401081)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);SRVR:OSAPR01MB2068; X-Microsoft-Exchange-Diagnostics: 1;OSAPR01MB2068;3:Xn/ZYrf2dKi//VXor98aAQCLIpkZ8D6hdkcDUrkJUGOCqzV9mT/EIgqrz9WXVYTMDOaV08cWgC/h/g4VKM+JP9LP/Oz9f2Jv3TDogG1y1L2dXpFzHayppG392s4yy9zbzQo5EBAYoHV8LdBGFi2WUlHTCL8ARCU5+Vm3VoV/YsO03KBPg/pgocMVw5I/EJs8/rplhfiVq9CtUJHdHjm4He8edHOuRKAagZTtYJP7AeNLAea6P1hFqNubdW54PD1t;25:8QeblimqSbpiwyIDbhwqK6Ls7lmZDaXSWUnJL+NVKjawfRv5tlcr6MJobiWsyuehQN0EhGsJ7whucngkiv6cZk/OJh08PAuxogBVOaoZ9eJ66+nWMEuVJu5mYUBPWiI2dBSsvB2lZZ5gQXiodjiboxiBDynjjDjM4Eyz3wiBcRxWPnQTQnust5dNUo2RclcVvkg3GKizrzlsr2yFah+SSFOI1/8dz0okpK8t3N9IlzxdV3zkdfYqb2xOzw3N5o/yX9gZiGBzTtaZv36TGinPfuUgm6bIsUvwu6bpSUAzkHt63XU6zt7nw+o0fm/q3M3Mu5vlShpTTloBUymjiSZ7xw==;31:tjbntVbDZLCRu0+s/nCLu7GPq782To79+8D6OywOg1MPZH4QLJ46T497o7wB2c7yJkdyevuSSThdJGt2vBKmL5UkABn6jytpIuxO7QnhdPLfXTvXpi3psECD8H3ych/2f0eCj4vWTSN88gX8QwZCsqBLp8A1QEKz4UkBNBjTCiX2dvnUF5VJhP819NZxCxjtyPU2aBqeM8oNzN/jfmh61LP39c1D3ApTB8EpfHAqeLE= X-MS-TrafficTypeDiagnostic: OSAPR01MB2068: X-Microsoft-Exchange-Diagnostics: 1;OSAPR01MB2068;20:x8F6Bv8++ya8xWBY5T2efOX/9XIGG1A5RTT2uHkg4AK+o2V+IVf+bCTzTzciDYG24Rcd6ajTS1vgkuJGjQ/qgyelrJQP69FRTkOm8S8PeNu1UulRoI1wnmYjH0NzNecbsd+akePv0WZfE0Oi8ZyTqSq7rNlN+SpBA2jjp5Ex9P6KFxsYzG3VlupTg0yVqileWiIZB8bliC4Z2pboK1S9QWNjuQsleLomDYa3k86Uv2R5XX14o+kjEkVtug8oibqYD8eKoXjZfsobCzWyp8RnoJVEB6yeRuR60afPxdVUc8ZHvwmFkXW065BDi8WVHjFwzAGHyphujqERIa+rOUCHvvZJMKe8D/z/7hk+Q8DAkq+ADtKa3IBnoQiQ4xWlNEFLLrwoO4J4/hs6eWQzrB71MaR/gmzqP99HXxFSMidmTxg+xWnd8iCKq8P/dYLcCkRR6vlh6OcrI1o29xEscxDqulDoAKXCOqzAoD1lzgW9QhreJfZ6xZ9ZVMCtfLIhgcvI;4:uo4l0DiIm62ewnJvYZB3uS1+QtFNsSDCoQDso2h3q+0Y0ujhkYtNeOmXKzBt/KiCCgDQPsLM8dWANaehA+WbbuaQf89ljvNzgT/3jO/xZ0lKpvIx761/RFFbNT7EujPtrczyIvcyWwEvOcDAFmhVa6g+Q+N0jKsDR5QLdM11qXVo4ToyyLYxGm41g0EfqTJRDnAe7CRLNlhhTkxnPbBmDFqPIvJdZcG1VzGQzrCnAwlh7s2ZwYo6VavlCp9VeLd8KT0T0QcmTEFycJlwiXfLZw== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3231221)(944501327)(52105095)(93006095)(93001095)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123562045)(20161123558120)(20161123560045)(6072148)(201708071742011);SRVR:OSAPR01MB2068;BCL:0;PCL:0;RULEID:;SRVR:OSAPR01MB2068; X-Forefront-PRVS: 0638FD5066 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(376002)(39380400002)(39860400002)(366004)(346002)(396003)(189003)(199004)(76176011)(68736007)(11346002)(53936002)(8936002)(4326008)(58126008)(486006)(50466002)(69596002)(52116002)(8676002)(25786009)(7736002)(476003)(2616005)(956004)(53416004)(7696005)(16586007)(81166006)(81156014)(106356001)(36756003)(86362001)(39060400002)(478600001)(575784001)(47776003)(305945005)(386003)(66066001)(446003)(105586002)(6346003)(6486002)(26005)(23726003)(110136005)(6116002)(3846002)(5660300001)(97736004)(316002)(2906002)(16526019)(186003)(16060500001);DIR:OUT;SFP:1102;SCL:1;SRVR:OSAPR01MB2068;H:morimoto-PC.renesas.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kuninori.morimoto.gx@renesas.com; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;OSAPR01MB2068;23:0nr0S9MjdO9LFmHOrA00Wi5btj8KglNszAfWjN3jc?= =?us-ascii?Q?/jzJc1IZObKtrZDMwx3FhZ9UlEOCpP3KsL3riqPuBvObw7QDDZu51Ip39Ldf?= =?us-ascii?Q?GvtSk3eNQ0C3Bx+MFAIs4TlgXBQwT3wOfweUYFXATkRUtPQwpJ0hlfcNDOsP?= =?us-ascii?Q?3oODKLR8Tw9pPhfe/z+ba32G7Bv7PIsLnuXYYgPsL3T3Jl7T4kfwFXBSUeCy?= =?us-ascii?Q?4BiGRnl0+pul7Cv15Nw2KO0gFxKPxmZg/4FsgKV8vNqy3l44IT6F7V+iKzbw?= =?us-ascii?Q?T7/P0Q692lqMmioE3lkcMXC8+00pwSGUCzfFdyWBY6YbbjLOOuxhiYe/DpOt?= =?us-ascii?Q?wOi2EnuML4oFFCqNcMOvAknEuB3Te8Ql6GBLvdZ7XuK5kshTFRpg2qahyKMf?= =?us-ascii?Q?TkblN1wMgAyvnyGFQCXiNdHP2GrYnZt3kCPU0dqFFO/hVu75T457/TXlBJ4H?= =?us-ascii?Q?uX11nQMzQ3v+1vBo5ajbsVltx8ILY9JKtxTrZLRE3oEbiNVuhQVbzTzVkHoV?= =?us-ascii?Q?J3NXO3dRgLuRhx4KqvUqhfKdd5+Nhe5mkjIafGOYN2ev1emPJTvwKJBOiGT+?= =?us-ascii?Q?kGjQDtNIuZz+iyN7Keq3MTLcMrWUqdJDrZ/x91Xx0XcWSQygEPIjNOPbCXoT?= =?us-ascii?Q?mYIAYPjUYNT9ar6SCh5I7tZzZr6znqYjhYq4CxCFDTjYo2IHLOdp0oEEEPW/?= =?us-ascii?Q?SLeWN/RFbkglK4gZgGEj/MXcoOQb5Fq+UoTr5mHlGOEr7cuyQfUVJX9F3tb3?= =?us-ascii?Q?5WucXTMPJu3NFMlca2aTmj2LbEoLRs6hzh9m2O3o+MZkHAsyHXShF6MKKhOE?= =?us-ascii?Q?2qjr98XjTKfqYukrewUXyse2DdLphX5JYagogsaBA9fZwD+b6MSmtvvK9tua?= =?us-ascii?Q?tk+E4qc6OL8zSfEBYlRWEUMJsaY/ZiU99v1NMhBxlk+FziRVQDTiGYUUcVBq?= =?us-ascii?Q?FoNobC8/CEdwudhrXurqdRDZ22Q09ibfWLiZ/rZ8JxR3Lfp31HkZDqNYofL5?= =?us-ascii?Q?92bCb7l8vw6KNxi9P2jEZKxxVWzjWFrNrw+YdUPI5iJYg3yT9M5lyMOTOZ/1?= =?us-ascii?Q?QM1jOhd7AOvsGTH9zcp7b6Rim+tro9T4NM1MmA7SlrUHDGDKOgAuiyH52BmZ?= =?us-ascii?Q?guj1DDlSVDrJ7hoZVUyR31ZQJFTS1BCyJMEr71eh0Pet5LiK4bOa5uZO1l0b?= =?us-ascii?Q?vqNB/1hgfmZVdMhy++hW1mHuyudR57qdhghzZtah4kJsW/dsXCqjhsHVW/PG?= =?us-ascii?Q?QeaaCG/UeMI7S5/k6fmRtY3JPguaxirPyQq/UHV?= X-Microsoft-Antispam-Message-Info: pDUxQQervHHKrHnn06JsKfJFV1as9Q5hH5p1+leCzxuIk7C/1qDlGYrP7T3oYGcUaaHZahux6epEpWBbz0TKqJKY5f6fddYsVZWRbKkwwFgpSwWTpPv8LAhcONXcG9PEVeGbgfyMcO6ob6T8QLsptAIB8lmv9S7M1Ke8xQk8gEPNinx2cSFq6356yXuTbYRF X-Microsoft-Exchange-Diagnostics: 1;OSAPR01MB2068;6:ZXWbYSVqSNiEUbSEU/HQVPU0MBU6+5NLnVa644QZwaAlt9zQSjpL5plZURmpQJlTPMOco/Qb8n/7ljB4aUJhrP2k4/n1449Df6qr023B4VxcH8nlnW3PMaZ0OccfqxXfyWWPouW48Rjk5eqTHfeOZzp6xwJ+84o1t31KRFTKGnehR9QQ5lgh2MY+IT2AhhluKOLiZgkj1Ej+bAZanMlwub9lTgJbmL8xgY0/5lUVycMGaC4HpswITQEeihinj6wc7eaPedKciF1DA7AHgdSBil/dwX85nByjHtdW/jRmqBNSBr7Hby8gznvv4AlvVPrBNO60opRc2uPzTnApWp5AbWlCx8LrZXgyW63eXBMnsEnhI7os4ow/QealnMaH1mPlrIO/f8NKHlLzaq9k+lQ4aTQzoJIvUk5aIlmWdYWHGf3kn2MhFiqgfexgUdxoeu4vAq0SMU4yMnKXgIa8Tw1s7g==;5:Cy1YqbOfmn0fOHGwcp8BCdpUcOfdM0xZ2NZAPFmi4/F1AUtR8g6mZcJtiYUvxT5p2hfrd8yJRzuWAKMXBYZsZs7Z7mGjBPCTgmfvE0DqHJN1Fs6IPRdvL2W8m4Lz18PSknBlGn2rIZYlPVQbmYSLQSQu1iYsxhFeELgNtHJIOzo=;24:+kpqvVJYE97uGLsoS+d+P9GSHLmpNAg+d0dJofog3CQriiIYLQ7MgG2QhI3aN0Gj2ZQ4FO8u1SYEJZs+fbFNAUpSA+2r8ps8wQX3t/t9QFk= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;OSAPR01MB2068;7:Sfz++EBpJtprC61KiBz29uLQVKR5JwG+gRH/qWmMktLrIDlC/PzJmhbkVk4xclXDCYKc+Zql+JP7rqP2+wyLEhAqSGGqDj2KTGpzHyn/vGpYpVBwFOPj6f5cSgMY35G9BgstlHPB/TDzmviqhBgsIfyykYEmB6TBi5wtC3Qdr27/niOjAp94bLY0kXD1FEjvgj3777fknvm6WqfR/eijfQGWcA4Q8EGYH3JJXohCbYvV81FveyjCooVwOFALXdRH;20:qyDGJqx2ngRZcCXQXJh0JXll7XHH+se56/EBQnolqtGAD41/+K7rtkV9ooO8yYqbgOpY7jAXTdPQHa4HtAZfCAaF7K5d++PYtkoq5MA71ns8GtaAHdxvYc6GV8ze4BXCuEOiDhn4B6XyORpm/bfbaNfkPck7Xqe0AkLXHsUj7E8= X-MS-Office365-Filtering-Correlation-Id: 0b4deb7d-b21e-4988-cfdc-08d59eafdee4 X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Apr 2018 06:54:13.7233 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0b4deb7d-b21e-4988-cfdc-08d59eafdee4 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSAPR01MB2068 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1597341179497843095?= X-GMAIL-MSGID: =?utf-8?q?1597341179497843095?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: From: Kuninori Morimoto We are counting of node by using of_node_get/put(), but not have of_node_read() which can be used to check count. Let's add it Signed-off-by: Kuninori Morimoto --- drivers/of/dynamic.c | 14 ++++++++++++++ include/linux/of.h | 5 +++++ 2 files changed, 19 insertions(+) diff --git a/drivers/of/dynamic.c b/drivers/of/dynamic.c index f4f8ed9..db5fdf3 100644 --- a/drivers/of/dynamic.c +++ b/drivers/of/dynamic.c @@ -49,6 +49,20 @@ void of_node_put(struct device_node *node) } EXPORT_SYMBOL(of_node_put); +/** + * of_node_read() - read refcount of a node + * @node: Node to dec refcount, NULL is supported to simplify writing of + * callers + */ +unsigned int of_node_read(struct device_node *node) +{ + if (node) + return kobject_read(&node->kobj); + + return 0; +} +EXPORT_SYMBOL(of_node_read); + static BLOCKING_NOTIFIER_HEAD(of_reconfig_chain); int of_reconfig_notifier_register(struct notifier_block *nb) diff --git a/include/linux/of.h b/include/linux/of.h index 4d25e4f..8be0ca8 100644 --- a/include/linux/of.h +++ b/include/linux/of.h @@ -122,6 +122,7 @@ static inline void of_node_init(struct device_node *node) #ifdef CONFIG_OF_DYNAMIC extern struct device_node *of_node_get(struct device_node *node); extern void of_node_put(struct device_node *node); +unsigned int of_node_read(struct device_node *node); #else /* CONFIG_OF_DYNAMIC */ /* Dummy ref counting routines - to be implemented later */ static inline struct device_node *of_node_get(struct device_node *node) @@ -129,6 +130,10 @@ static inline struct device_node *of_node_get(struct device_node *node) return node; } static inline void of_node_put(struct device_node *node) { } +static inline unsigned int of_node_read(struct device_node *node) +{ + return 0; +} #endif /* !CONFIG_OF_DYNAMIC */ /* Pointer for first entry in chain of all nodes. */ -- 1.9.1