From: "Daniel K." This patch will make the driver use the correct #define's when querying battery charge. This error sneaked into 2.4.20-pre1, and have been present in 2.5 since 2.5.49. 25-akpm/drivers/char/sonypi.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff -puN drivers/char/sonypi.c~sony-apm-fix drivers/char/sonypi.c --- 25/drivers/char/sonypi.c~sony-apm-fix Mon Mar 31 13:32:57 2003 +++ 25-akpm/drivers/char/sonypi.c Mon Mar 31 13:33:59 2003 @@ -532,7 +532,7 @@ static int sonypi_misc_ioctl(struct inod ret = -EFAULT; break; case SONYPI_IOCGBAT1REM: - if (ec_read16(SONYPI_BAT1_FULL, &val16)) { + if (ec_read16(SONYPI_BAT1_LEFT, &val16)) { ret = -EIO; break; } @@ -540,7 +540,7 @@ static int sonypi_misc_ioctl(struct inod ret = -EFAULT; break; case SONYPI_IOCGBAT2CAP: - if (ec_read16(SONYPI_BAT1_FULL, &val16)) { + if (ec_read16(SONYPI_BAT2_FULL, &val16)) { ret = -EIO; break; } @@ -548,7 +548,7 @@ static int sonypi_misc_ioctl(struct inod ret = -EFAULT; break; case SONYPI_IOCGBAT2REM: - if (ec_read16(SONYPI_BAT1_FULL, &val16)) { + if (ec_read16(SONYPI_BAT2_LEFT, &val16)) { ret = -EIO; break; } _