Patch "staging:iio:adc:ad7280a: Fix handing of device address bit reversing." has been added to the 5.15-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    staging:iio:adc:ad7280a: Fix handing of device address bit reversing.

to the 5.15-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     staging-iio-adc-ad7280a-fix-handing-of-device-addres.patch
and it can be found in the queue-5.15 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 3bf1a1cc4b75852ed744c60928d15f1c756c675c
Author: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
Date:   Sun Feb 6 19:03:09 2022 +0000

    staging:iio:adc:ad7280a: Fix handing of device address bit reversing.
    
    [ Upstream commit f281e4ddbbc0b60f061bc18a2834e9363ba85f9f ]
    
    The bit reversal was wrong for bits 1 and 3 of the 5 bits.
    Result is driver failure to probe if you have more than 2 daisy-chained
    devices.  Discovered via QEMU based device emulation.
    
    Fixes tag is for when this moved from a macro to a function, but it
    was broken before that.
    
    Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
    Fixes: 065a7c0b1fec ("Staging: iio: adc: ad7280a.c: Fixed Macro argument reuse")
    Reviewed-by: Marcelo Schmitt <marcelo.schmitt1@xxxxxxxxx>
    Link: https://lore.kernel.org/r/20220206190328.333093-2-jic23@xxxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/staging/iio/adc/ad7280a.c b/drivers/staging/iio/adc/ad7280a.c
index fef0055b8990..20183b2ea127 100644
--- a/drivers/staging/iio/adc/ad7280a.c
+++ b/drivers/staging/iio/adc/ad7280a.c
@@ -107,9 +107,9 @@
 static unsigned int ad7280a_devaddr(unsigned int addr)
 {
 	return ((addr & 0x1) << 4) |
-	       ((addr & 0x2) << 3) |
+	       ((addr & 0x2) << 2) |
 	       (addr & 0x4) |
-	       ((addr & 0x8) >> 3) |
+	       ((addr & 0x8) >> 2) |
 	       ((addr & 0x10) >> 4);
 }
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux