From patchwork Mon Jul 10 22:59:56 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Kandziora X-Patchwork-Id: 786415 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3x60zQ10X2z9s7C for ; Tue, 11 Jul 2017 09:00:02 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754955AbdGJXAA (ORCPT ); Mon, 10 Jul 2017 19:00:00 -0400 Received: from mout.gmx.net ([212.227.15.18]:53655 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754952AbdGJW76 (ORCPT ); Mon, 10 Jul 2017 18:59:58 -0400 Received: from [10.0.0.99] ([79.242.235.20]) by mail.gmx.com (mrgmx003 [212.227.17.190]) with ESMTPSA (Nemesis) id 0M2LZc-1dlP3o2nw4-00s843; Tue, 11 Jul 2017 00:59:56 +0200 From: Jan Kandziora Subject: [PATCH v4 1/2] wire: export w1_touch_bit To: LKML Cc: Evgeniy Polyakov , "linux-i2c@vger.kernel.org" Message-ID: <4aa9d196-1e31-de86-4ba7-752a0a04122c@gmx.de> Date: Tue, 11 Jul 2017 00:59:56 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0 MIME-Version: 1.0 Content-Language: de-DE X-Provags-ID: V03:K0:Au6ZJFSm7cAbBI9B29OtbtJxp+sj23MvJjZsLBlUgJUdPLmXzlx 5Arv2c+XlNgenKR+ZUaFxhTcU9QmIoAmG4qSrVuRc7kbyu31Sm2CQ13mxhYPEwXN0GvG4+G eOdedwkLhdMKSqQM1LvIlGPYY5G5h4K0OBOMl4R+c03o3Ef0XE+xIgNFTyXsipXKglI34zY JPWr+7db2+D/oswMm1tNg== X-UI-Out-Filterresults: notjunk:1; V01:K0:Q2zuMyI0V3s=:gaUHjPhdcj252cVh4JP49V +5nEj2iDGmZCr6D3tJsMNhwpzkD2o4ouEkYKR0GB6CpJfsdp0h75Id0VXCT3YDe1NgAfol0+g 2iM7vbsJWYASDZHG1JkUD4riyvAqapY4Gq7xcMaxbjiC81c5dnOWVpkGjyuIDbVGQxs6UXboV ht0H2emhvjiGixoCtvCgCamBvuCrXDUUnzBF9+o7AQpE7q5Rw3dlQZ6UVqcIosduYGAzEkw7I hgk5dXz19ETjEEyojgoaEtQMh4/kKcbeD6/YFbqf6FUDfafoNiMZi93rIjFGxKbAjqXPx46NF qmyBbWldus/TzmPxgiYglQEXMOtUip65Z81bfErTo1q0mvdqM/wKbt4PBATtWXyPvuVW47Wyi bQDTdBPSEEfPYoqUSrqnZINbwFxlS4H67OiTh58z1Q9H3p9TD9SmisfODeHtRez4bqUsepiJ8 NG1ELHkz/aiieHo1Z1Xn6uinl6j80+krA3s+op9ptvXGTSW9k1NGgSamcH/U7OTWmDQFENTOn BdWxUYN+deVyHUhipk0qVu3F9eYke2XpzdVLyhi/2DciIon92oH/0ghbegZaCZsmuk8ANK0Gw Zc7sthbymheG92YA6A7rN6xvz2orbz2s7mU2INR6M/M6ehD5NdDihcC3aZxT0sejlE5FfO3SZ 7P6IRxcSFD7oUhjbvW84bCBVhDkkXEQrUvReuAenqaLruBbDY5FJtqXG+jUPFMKXr22TOf+oC /5xV1Eoy1nuyYLBQ4PNWgoMjJh7TXixjWTzPOlywzsew5wMqQmKcSS9gTMK67U3PQTmzgWcPu q64Qv2E Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org Changes in v4 against v3 in this subpatch: - adapted to linux-4.12.0 No changes in v3 against v2,v1 in this subpatch. The w1_ds28e17 driver from the next part of this patch needs to emit single-bit read timeslots to the DS28E17. The w1 subsystem already has this function but it is not exported outside drivers/w1/w1_io.c This subpatch exports the w1_touch_bit symbol with EXPORT_SYMBOL_GPL, same as the other exported symbols in drivers/w1/w1_io.c May be also useful later for writing drivers for other Onewire chips which do single-bit communication. Signed-off-by: Jan Kandziora Acked-by: Evgeniy Polyakov --- From 6aedd1b890bd77bfe788f6af7a38724c16934ab0 Mon Sep 17 00:00:00 2001 From: Jan Kandziora Date: Sat, 8 Jul 2017 21:14:27 +0200 Subject: [PATCH 1/2] wire: export w1_touch_bit --- drivers/w1/w1.h | 1 + drivers/w1/w1_io.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/w1/w1.h b/drivers/w1/w1.h index 758a7a6..e7af855 100644 --- a/drivers/w1/w1.h +++ b/drivers/w1/w1.h @@ -295,6 +295,7 @@ int w1_attach_slave_device(struct w1_master *dev, struct w1_reg_num *rn); int w1_slave_detach(struct w1_slave *sl); u8 w1_triplet(struct w1_master *dev, int bdir); +u8 w1_touch_bit(struct w1_master *dev, int bit); void w1_write_8(struct w1_master *, u8); u8 w1_read_8(struct w1_master *); int w1_reset_bus(struct w1_master *); diff --git a/drivers/w1/w1_io.c b/drivers/w1/w1_io.c index 1134e6b..4bb77a1 100644 --- a/drivers/w1/w1_io.c +++ b/drivers/w1/w1_io.c @@ -58,7 +58,7 @@ static u8 w1_read_bit(struct w1_master *dev); * @dev: the master device * @bit: 0 - write a 0, 1 - write a 0 read the level */ -static u8 w1_touch_bit(struct w1_master *dev, int bit) +u8 w1_touch_bit(struct w1_master *dev, int bit) { if (dev->bus_master->touch_bit) return dev->bus_master->touch_bit(dev->bus_master->data, bit); @@ -69,6 +69,7 @@ static u8 w1_touch_bit(struct w1_master *dev, int bit) return 0; } } +EXPORT_SYMBOL_GPL(w1_touch_bit); /** * w1_write_bit() - Generates a write-0 or write-1 cycle. -- 2.13.1