Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0956895aa6f8dc6a33210967252fd7787652537d
Commit:     0956895aa6f8dc6a33210967252fd7787652537d
Parent:     ea7be66c44e56b6b7f1d61befc300871e855d43a
Author:     Jean Delvare <[EMAIL PROTECTED]>
AuthorDate: Sat Aug 11 13:57:05 2007 +0200
Committer:  Mark M. Hoffman <[EMAIL PROTECTED]>
CommitDate: Sun Aug 12 14:38:31 2007 -0400

    hwmon: (w83627ehf) don't assume bank 0
    
    Don't assume that the default bank is 0. For one thing, we don't even
    set it to 0 when the driver is loaded, so the initial state might be
    different. For another, something (say, the BIOS) might access the chip
    and leave with the bank set to something different, so assuming that
    the bank value is 0 is not safe.
    
    Signed-off-by: Jean Delvare <[EMAIL PROTECTED]>
    Signed-off-by: Mark M. Hoffman <[EMAIL PROTECTED]>
---
 drivers/hwmon/w83627ehf.c |    8 +++-----
 1 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/hwmon/w83627ehf.c b/drivers/hwmon/w83627ehf.c
index bca7fbc..d9a9ec7 100644
--- a/drivers/hwmon/w83627ehf.c
+++ b/drivers/hwmon/w83627ehf.c
@@ -309,18 +309,16 @@ static inline int is_word_sized(u16 reg)
              || (reg & 0x00ff) == 0x55));
 }
 
-/* We assume that the default bank is 0, thus the following two functions do
-   nothing for registers which live in bank 0. For others, they respectively
-   set the bank register to the correct value (before the register is
-   accessed), and back to 0 (afterwards). */
+/* Registers 0x50-0x5f are banked */
 static inline void w83627ehf_set_bank(struct w83627ehf_data *data, u16 reg)
 {
-       if (reg & 0xff00) {
+       if ((reg & 0x00f0) == 0x50) {
                outb_p(W83627EHF_REG_BANK, data->addr + ADDR_REG_OFFSET);
                outb_p(reg >> 8, data->addr + DATA_REG_OFFSET);
        }
 }
 
+/* Not strictly necessary, but play it safe for now */
 static inline void w83627ehf_reset_bank(struct w83627ehf_data *data, u16 reg)
 {
        if (reg & 0xff00) {
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to