Commit c0d4010e11e23d6f55f9bdda63b1974f35af71bf
Committed by
Samuel Ortiz
1 parent
eb6e8ddf06
Exists in
master
and in
7 other branches
mfd: AB8500 mask off irrelevant bits from the SPI message
The registers on the AB8500 are only 8 bits wide, so the content of the remaining bits is undefined. Let's mask off the undefined stuff when returning a register in an SPI read. Acked-by: Rabin Vincent <rabin.vincent@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Showing 1 changed file with 6 additions and 1 deletions Side-by-side Diff
drivers/mfd/ab8500-spi.c
... | ... | @@ -68,7 +68,12 @@ |
68 | 68 | |
69 | 69 | ret = spi_sync(spi, &msg); |
70 | 70 | if (!ret) |
71 | - ret = ab8500->rx_buf[0]; | |
71 | + /* | |
72 | + * Only the 8 lowermost bytes are | |
73 | + * defined with value, the rest may | |
74 | + * vary depending on chip/board noise. | |
75 | + */ | |
76 | + ret = ab8500->rx_buf[0] & 0xFFU; | |
72 | 77 | |
73 | 78 | return ret; |
74 | 79 | } |