From: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
To: linux-kernel@vger.kernel.org
Cc: Andrew Morton <akpm@linux-foundation.org>,
David Fries <david@fries.net>,
Evgeniy Polyakov <johnpol@2ka.mipt.ru>
Subject: [PATCH 22/30] W1: ds2490.c disable bit read and write
Date: Fri, 11 Jul 2008 17:51:37 +0400 [thread overview]
Message-ID: <12157843061535-git-send-email-johnpol@2ka.mipt.ru> (raw)
In-Reply-To: <12157843054074-git-send-email-johnpol@2ka.mipt.ru>
Don't export read and write bit operations, they didn't work, they
weren't used, and they can't be made to work. The one wire low level
bit operations expect to set high or low levels, the ds2490 hardware
only supports complete read or write time slots, better to just
comment them out.
Signed-off-by: David Fries <david@fries.net>
Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
---
drivers/w1/masters/ds2490.c | 25 ++++++++++++++++++-------
1 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/drivers/w1/masters/ds2490.c b/drivers/w1/masters/ds2490.c
index 7acf6d2..6bfd6a9 100644
--- a/drivers/w1/masters/ds2490.c
+++ b/drivers/w1/masters/ds2490.c
@@ -520,6 +520,7 @@ static int ds_touch_bit(struct ds_device *dev, u8 bit, u8 *tbit)
return 0;
}
+#if 0
static int ds_write_bit(struct ds_device *dev, u8 bit)
{
int err;
@@ -538,6 +539,7 @@ static int ds_write_bit(struct ds_device *dev, u8 bit)
return 0;
}
+#endif
static int ds_write_byte(struct ds_device *dev, u8 byte)
{
@@ -722,6 +724,7 @@ static u8 ds9490r_touch_bit(void *data, u8 bit)
return ret;
}
+#if 0
static void ds9490r_write_bit(void *data, u8 bit)
{
struct ds_device *dev = data;
@@ -729,13 +732,6 @@ static void ds9490r_write_bit(void *data, u8 bit)
ds_write_bit(dev, bit);
}
-static void ds9490r_write_byte(void *data, u8 byte)
-{
- struct ds_device *dev = data;
-
- ds_write_byte(dev, byte);
-}
-
static u8 ds9490r_read_bit(void *data)
{
struct ds_device *dev = data;
@@ -748,6 +744,14 @@ static u8 ds9490r_read_bit(void *data)
return bit & 1;
}
+#endif
+
+static void ds9490r_write_byte(void *data, u8 byte)
+{
+ struct ds_device *dev = data;
+
+ ds_write_byte(dev, byte);
+}
static u8 ds9490r_read_byte(void *data)
{
@@ -812,8 +816,15 @@ static int ds_w1_init(struct ds_device *dev)
dev->master.data = dev;
dev->master.touch_bit = &ds9490r_touch_bit;
+ /* read_bit and write_bit in w1_bus_master are expected to set and
+ * sample the line level. For write_bit that means it is expected to
+ * set it to that value and leave it there. ds2490 only supports an
+ * individual time slot at the lowest level. The requirement from
+ * pulling the bus state down to reading the state is 15us, something
+ * that isn't realistic on the USB bus anyway.
dev->master.read_bit = &ds9490r_read_bit;
dev->master.write_bit = &ds9490r_write_bit;
+ */
dev->master.read_byte = &ds9490r_read_byte;
dev->master.write_byte = &ds9490r_write_byte;
dev->master.read_block = &ds9490r_read_block;
--
1.4.4.4
next prev parent reply other threads:[~2008-07-11 13:53 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-11 13:51 w1 updates Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 1/30] W1: fix deadlocks and remove w1_control_thread Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 2/30] W1: abort search early on on exit Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 3/30] W1: don't delay search start Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 4/30] W1: w1_process, block or sleep Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 5/30] W1: feature, enable hardware strong pullup Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 6/30] W1: feature, w1_therm.c use strong pullup and documentation Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 7/30] W1: be able to manually add and remove slaves Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 8/30] W1: recode w1_slave_found logic Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 9/30] W1: new module parameter search_count Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 10/30] W1: Document add, remove, search_count, and pullup Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 11/30] W1: w1_slave_read_id read bug, use device_attribute Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 12/30] W1: w1_therm fix user buffer overflow and cat Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 13/30] W1: w1_family, remove unused variable need_exit Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 14/30] W1: w1_therm consistent mutex access code cleanup Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 15/30] W1: w1_int.c use first available master number Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 16/30] W1: w1.c s/printk/dev_dbg/ Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 17/30] W1: w1_io.c reset comments and msleep Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 18/30] W1: ds1wm.c msleep for reset Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 19/30] W1: ds2490.c correct print message Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 20/30] W1: ds2490.c add support for strong pullup Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 21/30] W1: ds2490.c ds_write_bit, grouping error, disable readback Evgeniy Polyakov
2008-07-11 13:51 ` Evgeniy Polyakov [this message]
2008-07-11 13:51 ` [PATCH 23/30] W1: ds2490.c simplify and fix ds_touch_bit Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 24/30] W1: ds2490.c ds_dump_status rework Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 25/30] W1: ds2490.c ds_reset remove ds_wait_status Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 26/30] W1: ds2490.c reset ds2490 in init Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 27/30] W1: ds2490.c magic number work Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 28/30] W1: ds2490.c ds_write_block remove extra ds_wait_status Evgeniy Polyakov
2008-07-11 13:51 ` [PATCH 29/30] W1: Documentation/w1/masters/ds2490 update Evgeniy Polyakov
2008-07-14 20:40 ` Randy Dunlap
2008-07-15 2:16 ` David Fries
2008-07-17 21:52 ` Randy Dunlap
2008-07-15 2:17 ` David Fries
2008-07-11 13:51 ` [PATCH 30/30] W1: ds2490.c optimize ds_set_pullup Evgeniy Polyakov
-- strict thread matches above, loose matches on Subject: below --
2008-07-29 2:04 [PATCH 0/30] W1: w1 core fixes, ds2490 updates, strong pullup David Fries
2008-07-29 2:25 ` [PATCH 22/30] W1: ds2490.c disable bit read and write David Fries
2008-07-29 23:13 ` [PATCH 0/30] W1: w1 core fixes, ds2490 updates, strong pullup Andrew Morton
2008-07-31 2:50 ` [PATCH 22/30] W1: ds2490.c disable bit read and write David Fries
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=12157843061535-git-send-email-johnpol@2ka.mipt.ru \
--to=johnpol@2ka.mipt.ru \
--cc=akpm@linux-foundation.org \
--cc=david@fries.net \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox