|
|
@ -0,0 +1,30 @@ |
|
|
|
AaAA |
|
|
|
--- a/module/owlib/src/c/ow_w1_parse.c
|
|
|
|
+++ b/module/owlib/src/c/ow_w1_parse.c
|
|
|
|
@@ -237,7 +237,7 @@ enum Netlink_Read_Status W1_Process_Resp
|
|
|
|
owfree(nlp.nlm) ; |
|
|
|
return nrs_nodev ; |
|
|
|
} |
|
|
|
- if ( nrs_callback == NULL ) { // status message
|
|
|
|
+ if ( nrs_callback == NULL ) { // bus reset
|
|
|
|
owfree(nlp.nlm) ; |
|
|
|
return nrs_complete ; |
|
|
|
} |
|
|
|
@@ -246,7 +246,7 @@ enum Netlink_Read_Status W1_Process_Resp
|
|
|
|
nrs_callback( &nlp, v, pn ) ; |
|
|
|
LEVEL_DEBUG("Called nrs_callback"); |
|
|
|
owfree(nlp.nlm) ; |
|
|
|
- if ( nlp.cn->ack != 0 ) {
|
|
|
|
+ if ( nlp.cn->seq != nlp.cn->ack ) {
|
|
|
|
if ( nlp.w1m->type == W1_LIST_MASTERS ) { |
|
|
|
continue ; // look for more data |
|
|
|
} |
|
|
|
@@ -254,7 +254,7 @@ enum Netlink_Read_Status W1_Process_Resp
|
|
|
|
continue ; // look for more data |
|
|
|
} |
|
|
|
} |
|
|
|
- nrs_callback = NULL ; // now look for status message
|
|
|
|
+ return nrs_complete ; // status message
|
|
|
|
} |
|
|
|
return nrs_timeout ; |
|
|
|
} |