* [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 a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox