* [GIT PATCH] W1 patches for 2.6.13
@ 2005-09-08 22:21 Greg KH
2005-09-08 23:30 ` Marcel Holtmann
0 siblings, 1 reply; 8+ messages in thread
From: Greg KH @ 2005-09-08 22:21 UTC (permalink / raw)
To: Linus Torvalds, Andrew Morton; +Cc: linux-kernel, johnpol
Here are some w1 patches that have been in the -mm tree for a while.
They add a new driver, and fix up the netlink logic a lot. They also
add a crc16 implementation that is needed.
Please pull from:
rsync://rsync.kernel.org/pub/scm/linux/kernel/git/gregkh/w1-2.6.git/
or from:
master.kernel.org:/pub/scm/linux/kernel/git/gregkh/w1-2.6.git/
if it isn't synced up yet.
The full patch series will sent to the linux-kernel mailing lists, if
anyone wants to see them.
thanks,
greg k-h
drivers/w1/Kconfig | 16 ++
drivers/w1/Makefile | 7
drivers/w1/ds_w1_bridge.c | 24 +--
drivers/w1/dscore.c | 161 +++++++++++----------
drivers/w1/dscore.h | 10 -
drivers/w1/w1.c | 336 ++++++++++++++++++++++++++++-----------------
drivers/w1/w1.h | 22 ++
drivers/w1/w1_ds2433.c | 339 +++++++++++++++++++++++++++++++++++++++++++++-
drivers/w1/w1_family.c | 11 -
drivers/w1/w1_family.h | 7
drivers/w1/w1_int.c | 28 +--
drivers/w1/w1_io.c | 24 +++
drivers/w1/w1_io.h | 1
drivers/w1/w1_netlink.c | 26 +++
drivers/w1/w1_netlink.h | 2
drivers/w1/w1_smem.c | 53 -------
drivers/w1/w1_therm.c | 49 +++---
include/linux/crc16.h | 44 +++++
lib/Kconfig | 8 +
lib/Makefile | 3
lib/crc16.c | 67 +++++++++
21 files changed, 898 insertions(+), 340 deletions(-)
Evgeniy Polyakov:
W1: w1_netlink: New init/fini netlink callbacks.
w1: Detouching bug fixed.
w1: Fixed 64bit compilation warning.
w1: hotplug support.
W1: Sync with w1/ds9490 tree.
w1: Added add/remove slave callbacks.
w1: Added inline functions on top of container_of().
w1: Added w1_reset_select_slave() - Resets the bus and then selects the slave by
w1_ds2433: Added crc16 protection and read caching.
lib/crc16: added crc16 algorithm.
w1: Decreased debug level.
w1: Added DS2433 driver.
w1: Added DS2433 driver - family id update.
w1: added private family data into w1_slave strucutre.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [GIT PATCH] W1 patches for 2.6.13
2005-09-08 22:21 [GIT PATCH] W1 patches for 2.6.13 Greg KH
@ 2005-09-08 23:30 ` Marcel Holtmann
2005-09-09 3:30 ` Greg KH
0 siblings, 1 reply; 8+ messages in thread
From: Marcel Holtmann @ 2005-09-08 23:30 UTC (permalink / raw)
To: Greg KH; +Cc: Linus Torvalds, Andrew Morton, linux-kernel, johnpol
Hi Greg,
> Here are some w1 patches that have been in the -mm tree for a while.
> They add a new driver, and fix up the netlink logic a lot. They also
> add a crc16 implementation that is needed.
adding the CRC-16 is very cool. I was just about to submit one by my
own, because it is also needed for the Bluetooth L2CAP retransmission
and flow control support.
What about the 1-Wire notes inside the CRC-16 code. This suppose to be
generic code and so this doesn't belong there.
Regards
Marcel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [GIT PATCH] W1 patches for 2.6.13
2005-09-08 23:30 ` Marcel Holtmann
@ 2005-09-09 3:30 ` Greg KH
2005-09-09 5:08 ` Evgeniy Polyakov
0 siblings, 1 reply; 8+ messages in thread
From: Greg KH @ 2005-09-09 3:30 UTC (permalink / raw)
To: Marcel Holtmann; +Cc: Linus Torvalds, Andrew Morton, linux-kernel, johnpol
On Fri, Sep 09, 2005 at 01:30:09AM +0200, Marcel Holtmann wrote:
> Hi Greg,
>
> > Here are some w1 patches that have been in the -mm tree for a while.
> > They add a new driver, and fix up the netlink logic a lot. They also
> > add a crc16 implementation that is needed.
>
> adding the CRC-16 is very cool. I was just about to submit one by my
> own, because it is also needed for the Bluetooth L2CAP retransmission
> and flow control support.
>
> What about the 1-Wire notes inside the CRC-16 code. This suppose to be
> generic code and so this doesn't belong there.
Yes, those comments don't belong there. Evgeniy, want to fix this?
thanks,
greg k-h
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [GIT PATCH] W1 patches for 2.6.13
2005-09-09 3:30 ` Greg KH
@ 2005-09-09 5:08 ` Evgeniy Polyakov
2005-09-09 21:16 ` Greg KH
0 siblings, 1 reply; 8+ messages in thread
From: Evgeniy Polyakov @ 2005-09-09 5:08 UTC (permalink / raw)
To: Greg KH; +Cc: Marcel Holtmann, Linus Torvalds, Andrew Morton, linux-kernel
On Thu, Sep 08, 2005 at 08:30:36PM -0700, Greg KH (gregkh@suse.de) wrote:
> On Fri, Sep 09, 2005 at 01:30:09AM +0200, Marcel Holtmann wrote:
> > Hi Greg,
> >
> > > Here are some w1 patches that have been in the -mm tree for a while.
> > > They add a new driver, and fix up the netlink logic a lot. They also
> > > add a crc16 implementation that is needed.
> >
> > adding the CRC-16 is very cool. I was just about to submit one by my
> > own, because it is also needed for the Bluetooth L2CAP retransmission
> > and flow control support.
> >
> > What about the 1-Wire notes inside the CRC-16 code. This suppose to be
> > generic code and so this doesn't belong there.
>
> Yes, those comments don't belong there. Evgeniy, want to fix this?
No problem. Patch attached.
> thanks,
>
> greg k-h
Remove w1 specific comments from generic crc16 implementation.
Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
diff --git a/include/linux/crc16.h b/include/linux/crc16.h
--- a/include/linux/crc16.h
+++ b/include/linux/crc16.h
@@ -1,22 +1,11 @@
/*
* crc16.h - CRC-16 routine
*
- * Implements the standard CRC-16, as used with 1-wire devices:
+ * Implements the standard CRC-16:
* Width 16
* Poly 0x8005 (x^16 + x^15 + x^2 + 1)
* Init 0
*
- * For 1-wire devices, the CRC is stored inverted, LSB-first
- *
- * Example buffer with the CRC attached:
- * 31 32 33 34 35 36 37 38 39 C2 44
- *
- * The CRC over a buffer with the CRC attached is 0xB001.
- * So, if (crc16(0, buf, size) == 0xB001) then the buffer is valid.
- *
- * Refer to "Application Note 937: Book of iButton Standards" for details.
- * http://www.maxim-ic.com/appnotes.cfm/appnote_number/937
- *
* Copyright (c) 2005 Ben Gardner <bgardner@wabtec.com>
*
* This source code is licensed under the GNU General Public License,
@@ -28,9 +17,6 @@
#include <linux/types.h>
-#define CRC16_INIT 0
-#define CRC16_VALID 0xb001
-
extern u16 const crc16_table[256];
extern u16 crc16(u16 crc, const u8 *buffer, size_t len);
--
Evgeniy Polyakov
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [GIT PATCH] W1 patches for 2.6.13
2005-09-09 5:08 ` Evgeniy Polyakov
@ 2005-09-09 21:16 ` Greg KH
2005-09-09 21:58 ` Evgeniy Polyakov
0 siblings, 1 reply; 8+ messages in thread
From: Greg KH @ 2005-09-09 21:16 UTC (permalink / raw)
To: Evgeniy Polyakov
Cc: Greg KH, Marcel Holtmann, Linus Torvalds, Andrew Morton,
linux-kernel
On Fri, Sep 09, 2005 at 09:08:25AM +0400, Evgeniy Polyakov wrote:
> On Thu, Sep 08, 2005 at 08:30:36PM -0700, Greg KH (gregkh@suse.de) wrote:
> > On Fri, Sep 09, 2005 at 01:30:09AM +0200, Marcel Holtmann wrote:
> > > Hi Greg,
> > >
> > > > Here are some w1 patches that have been in the -mm tree for a while.
> > > > They add a new driver, and fix up the netlink logic a lot. They also
> > > > add a crc16 implementation that is needed.
> > >
> > > adding the CRC-16 is very cool. I was just about to submit one by my
> > > own, because it is also needed for the Bluetooth L2CAP retransmission
> > > and flow control support.
> > >
> > > What about the 1-Wire notes inside the CRC-16 code. This suppose to be
> > > generic code and so this doesn't belong there.
> >
> > Yes, those comments don't belong there. Evgeniy, want to fix this?
>
> No problem. Patch attached.
>
> > thanks,
> >
> > greg k-h
>
> Remove w1 specific comments from generic crc16 implementation.
>
> Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
>
> diff --git a/include/linux/crc16.h b/include/linux/crc16.h
> --- a/include/linux/crc16.h
> +++ b/include/linux/crc16.h
> @@ -1,22 +1,11 @@
> /*
> * crc16.h - CRC-16 routine
> *
> - * Implements the standard CRC-16, as used with 1-wire devices:
> + * Implements the standard CRC-16:
> * Width 16
> * Poly 0x8005 (x^16 + x^15 + x^2 + 1)
> * Init 0
> *
> - * For 1-wire devices, the CRC is stored inverted, LSB-first
> - *
> - * Example buffer with the CRC attached:
> - * 31 32 33 34 35 36 37 38 39 C2 44
> - *
> - * The CRC over a buffer with the CRC attached is 0xB001.
> - * So, if (crc16(0, buf, size) == 0xB001) then the buffer is valid.
> - *
> - * Refer to "Application Note 937: Book of iButton Standards" for details.
> - * http://www.maxim-ic.com/appnotes.cfm/appnote_number/937
> - *
> * Copyright (c) 2005 Ben Gardner <bgardner@wabtec.com>
> *
> * This source code is licensed under the GNU General Public License,
> @@ -28,9 +17,6 @@
>
> #include <linux/types.h>
>
> -#define CRC16_INIT 0
> -#define CRC16_VALID 0xb001
> -
This breaks your w1 code:
CC [M] drivers/w1/w1_ds2433.o
drivers/w1/w1_ds2433.c: In function `w1_f23_refresh_block':
drivers/w1/w1_ds2433.c:84: error: `CRC16_INIT' undeclared (first use in this function)
drivers/w1/w1_ds2433.c:84: error: (Each undeclared identifier is reported only once
drivers/w1/w1_ds2433.c:84: error: for each function it appears in.)
drivers/w1/w1_ds2433.c:84: error: `CRC16_VALID' undeclared (first use in this function)
drivers/w1/w1_ds2433.c: In function `w1_f23_write_bin':
drivers/w1/w1_ds2433.c:224: error: `CRC16_INIT' undeclared (first use in this function)
drivers/w1/w1_ds2433.c:224: error: `CRC16_VALID' undeclared (first use in this function)
So I'm not going to apply this :(
thanks,
greg k-h
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [GIT PATCH] W1 patches for 2.6.13
2005-09-09 21:16 ` Greg KH
@ 2005-09-09 21:58 ` Evgeniy Polyakov
2005-09-09 22:11 ` Greg KH
0 siblings, 1 reply; 8+ messages in thread
From: Evgeniy Polyakov @ 2005-09-09 21:58 UTC (permalink / raw)
To: Greg KH
Cc: Greg KH, Marcel Holtmann, Linus Torvalds, Andrew Morton,
linux-kernel
On Fri, Sep 09, 2005 at 02:16:19PM -0700, GregKH (greg@kroah.com) wrote:
> On Fri, Sep 09, 2005 at 09:08:25AM +0400, Evgeniy Polyakov wrote:
> > On Thu, Sep 08, 2005 at 08:30:36PM -0700, Greg KH (gregkh@suse.de) wrote:
> > > On Fri, Sep 09, 2005 at 01:30:09AM +0200, Marcel Holtmann wrote:
> > > > Hi Greg,
> > > >
> > > > > Here are some w1 patches that have been in the -mm tree for a while.
> > > > > They add a new driver, and fix up the netlink logic a lot. They also
> > > > > add a crc16 implementation that is needed.
> > > >
> > > > adding the CRC-16 is very cool. I was just about to submit one by my
> > > > own, because it is also needed for the Bluetooth L2CAP retransmission
> > > > and flow control support.
> > > >
> > > > What about the 1-Wire notes inside the CRC-16 code. This suppose to be
> > > > generic code and so this doesn't belong there.
> > >
> > > Yes, those comments don't belong there. Evgeniy, want to fix this?
> >
> > No problem. Patch attached.
> >
> > > thanks,
> > >
> > > greg k-h
> >
> > Remove w1 specific comments from generic crc16 implementation.
> >
> > Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
> >
> > diff --git a/include/linux/crc16.h b/include/linux/crc16.h
> > --- a/include/linux/crc16.h
> > +++ b/include/linux/crc16.h
> > @@ -1,22 +1,11 @@
> > /*
> > * crc16.h - CRC-16 routine
> > *
> > - * Implements the standard CRC-16, as used with 1-wire devices:
> > + * Implements the standard CRC-16:
> > * Width 16
> > * Poly 0x8005 (x^16 + x^15 + x^2 + 1)
> > * Init 0
> > *
> > - * For 1-wire devices, the CRC is stored inverted, LSB-first
> > - *
> > - * Example buffer with the CRC attached:
> > - * 31 32 33 34 35 36 37 38 39 C2 44
> > - *
> > - * The CRC over a buffer with the CRC attached is 0xB001.
> > - * So, if (crc16(0, buf, size) == 0xB001) then the buffer is valid.
> > - *
> > - * Refer to "Application Note 937: Book of iButton Standards" for details.
> > - * http://www.maxim-ic.com/appnotes.cfm/appnote_number/937
> > - *
> > * Copyright (c) 2005 Ben Gardner <bgardner@wabtec.com>
> > *
> > * This source code is licensed under the GNU General Public License,
> > @@ -28,9 +17,6 @@
> >
> > #include <linux/types.h>
> >
> > -#define CRC16_INIT 0
> > -#define CRC16_VALID 0xb001
> > -
>
> This breaks your w1 code:
> CC [M] drivers/w1/w1_ds2433.o
> drivers/w1/w1_ds2433.c: In function `w1_f23_refresh_block':
> drivers/w1/w1_ds2433.c:84: error: `CRC16_INIT' undeclared (first use in this function)
> drivers/w1/w1_ds2433.c:84: error: (Each undeclared identifier is reported only once
> drivers/w1/w1_ds2433.c:84: error: for each function it appears in.)
> drivers/w1/w1_ds2433.c:84: error: `CRC16_VALID' undeclared (first use in this function)
> drivers/w1/w1_ds2433.c: In function `w1_f23_write_bin':
> drivers/w1/w1_ds2433.c:224: error: `CRC16_INIT' undeclared (first use in this function)
> drivers/w1/w1_ds2433.c:224: error: `CRC16_VALID' undeclared (first use in this function)
>
>
> So I'm not going to apply this :(
I'm sorry - quite far from testing machines...
Here is additional patch for ds_2433.c - it adds two missing defines.
--- ./drivers/w1/w1_ds2433.c.orig 2005-09-10 01:59:41.000000000 +0400
+++ ./drivers/w1/w1_ds2433.c 2005-09-10 01:57:41.000000000 +0400
@@ -15,6 +15,10 @@
#include <linux/delay.h>
#ifdef CONFIG_W1_F23_CRC
#include <linux/crc16.h>
+
+#define CRC16_INIT 0
+#define CRC16_VALID 0xb001
+
#endif
#include "w1.h"
> thanks,
>
> greg k-h
--
Evgeniy Polyakov
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [GIT PATCH] W1 patches for 2.6.13
2005-09-09 21:58 ` Evgeniy Polyakov
@ 2005-09-09 22:11 ` Greg KH
2005-09-12 13:12 ` [1/1] crc16: remove w1 specific comments Evgeniy Polyakov
0 siblings, 1 reply; 8+ messages in thread
From: Greg KH @ 2005-09-09 22:11 UTC (permalink / raw)
To: Evgeniy Polyakov
Cc: Greg KH, Marcel Holtmann, Linus Torvalds, Andrew Morton,
linux-kernel
On Sat, Sep 10, 2005 at 01:58:14AM +0400, Evgeniy Polyakov wrote:
> I'm sorry - quite far from testing machines...
> Here is additional patch for ds_2433.c - it adds two missing defines.
>
> --- ./drivers/w1/w1_ds2433.c.orig 2005-09-10 01:59:41.000000000 +0400
> +++ ./drivers/w1/w1_ds2433.c 2005-09-10 01:57:41.000000000 +0400
> @@ -15,6 +15,10 @@
> #include <linux/delay.h>
> #ifdef CONFIG_W1_F23_CRC
> #include <linux/crc16.h>
> +
> +#define CRC16_INIT 0
> +#define CRC16_VALID 0xb001
> +
Ick, care to just respin the whole patch, with a proper Subject: and
signed-off-line?
thanks,
greg k-h
^ permalink raw reply [flat|nested] 8+ messages in thread
* [1/1] crc16: remove w1 specific comments.
2005-09-09 22:11 ` Greg KH
@ 2005-09-12 13:12 ` Evgeniy Polyakov
0 siblings, 0 replies; 8+ messages in thread
From: Evgeniy Polyakov @ 2005-09-12 13:12 UTC (permalink / raw)
To: Greg KH
Cc: Greg KH, Marcel Holtmann, Linus Torvalds, Andrew Morton,
linux-kernel
Remove w1 comments from crc16.h and move
specific constants into w1_ds2433.c where they are used.
Replace %d with %zd.
Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
diff --git a/drivers/w1/w1_ds2433.c b/drivers/w1/w1_ds2433.c
--- a/drivers/w1/w1_ds2433.c
+++ b/drivers/w1/w1_ds2433.c
@@ -15,6 +15,10 @@
#include <linux/delay.h>
#ifdef CONFIG_W1_F23_CRC
#include <linux/crc16.h>
+
+#define CRC16_INIT 0
+#define CRC16_VALID 0xb001
+
#endif
#include "w1.h"
@@ -214,7 +218,7 @@ static ssize_t w1_f23_write_bin(struct k
#ifdef CONFIG_W1_F23_CRC
/* can only write full blocks in cached mode */
if ((off & W1_PAGE_MASK) || (count & W1_PAGE_MASK)) {
- dev_err(&sl->dev, "invalid offset/count off=%d cnt=%d\n",
+ dev_err(&sl->dev, "invalid offset/count off=%d cnt=%zd\n",
(int)off, count);
return -EINVAL;
}
diff --git a/include/linux/crc16.h b/include/linux/crc16.h
--- a/include/linux/crc16.h
+++ b/include/linux/crc16.h
@@ -1,22 +1,11 @@
/*
* crc16.h - CRC-16 routine
*
- * Implements the standard CRC-16, as used with 1-wire devices:
+ * Implements the standard CRC-16:
* Width 16
* Poly 0x8005 (x^16 + x^15 + x^2 + 1)
* Init 0
*
- * For 1-wire devices, the CRC is stored inverted, LSB-first
- *
- * Example buffer with the CRC attached:
- * 31 32 33 34 35 36 37 38 39 C2 44
- *
- * The CRC over a buffer with the CRC attached is 0xB001.
- * So, if (crc16(0, buf, size) == 0xB001) then the buffer is valid.
- *
- * Refer to "Application Note 937: Book of iButton Standards" for details.
- * http://www.maxim-ic.com/appnotes.cfm/appnote_number/937
- *
* Copyright (c) 2005 Ben Gardner <bgardner@wabtec.com>
*
* This source code is licensed under the GNU General Public License,
@@ -28,9 +17,6 @@
#include <linux/types.h>
-#define CRC16_INIT 0
-#define CRC16_VALID 0xb001
-
extern u16 const crc16_table[256];
extern u16 crc16(u16 crc, const u8 *buffer, size_t len);
--
Evgeniy Polyakov
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2005-09-12 13:13 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-09-08 22:21 [GIT PATCH] W1 patches for 2.6.13 Greg KH
2005-09-08 23:30 ` Marcel Holtmann
2005-09-09 3:30 ` Greg KH
2005-09-09 5:08 ` Evgeniy Polyakov
2005-09-09 21:16 ` Greg KH
2005-09-09 21:58 ` Evgeniy Polyakov
2005-09-09 22:11 ` Greg KH
2005-09-12 13:12 ` [1/1] crc16: remove w1 specific comments Evgeniy Polyakov
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.