diff options
author | Quinn Jensen <quinn.jensen@freescale.com> | 2007-05-24 18:12:38 -0600 |
---|---|---|
committer | Quinn Jensen <quinn.jensen@freescale.com> | 2007-05-24 18:12:38 -0600 |
commit | af0e647babe79fe0c093644056c9b774b64d45ab (patch) | |
tree | c08efc3b1d10c65f42beba616fa1d2571842e4ca /drivers | |
parent | 1fe3ba287e4eb4a437a1f9e1c2d2f0a18ec76e7c (diff) |
Bug ENGR00028972: Fix for onewire bootup delay without board mods.
http://www.bitshrine.org/gpp/linux-2.6.19.2-mx-1wire_boot_delay.patch
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/w1/masters/mxc_w1.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/w1/masters/mxc_w1.c b/drivers/w1/masters/mxc_w1.c index 6f0c00c82f39..9ac5c646cfc0 100644 --- a/drivers/w1/masters/mxc_w1.c +++ b/drivers/w1/masters/mxc_w1.c @@ -240,14 +240,16 @@ void search_ROM_accelerator(void *data, u8 search_type, reg_val = rn2[z] >> (8 * w); mxc_w1_ds2_write_byte(data, reg_val); reg_val = mxc_w1_read_byte(data); + if ((reg_val & 0x3) == 0x3) { + pr_debug("Device is Not Responding\n"); + break; + } for (j = 0; j < 8; j += 2) { byte = 0xFF; byte1 = 1; byte ^= byte1 << j; bit = (reg_val >> j) & 0x1; bit2 = (reg_val >> j); - if ((bit2 & 0x3) == 0x3) - pr_debug("Device is Not Responding\n"); if (bit) { prev_disc = disc; disc = 8 * i + j; |