aboutsummaryrefslogtreecommitdiff
path: root/drivers/input/misc/wistron_btns.c
diff options
context:
space:
mode:
authorMiloslav Trmac <mitr@volny.cz>2006-01-10 01:59:07 -0500
committerDmitry Torokhov <dtor_core@ameritech.net>2006-01-10 01:59:07 -0500
commitc28c3583679c181a03910b6356228e99fcc27167 (patch)
treee3c7db6f714a909511c52e4625d0f31ad513a5d0 /drivers/input/misc/wistron_btns.c
parentebbac7dde2f5c6b4bd219573f840d4b3952e6220 (diff)
Input: wistron - do not crash if BIOS does not support interface
offset can never be < 0 because it has type size_t. The driver currently oopses on insmod if BIOS does not support the interface, instead of refusing to load. Signed-off-by: Miloslav Trmac <mitr@volny.cz> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input/misc/wistron_btns.c')
-rw-r--r--drivers/input/misc/wistron_btns.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/input/misc/wistron_btns.c b/drivers/input/misc/wistron_btns.c
index a05b8557842..4b415d9b012 100644
--- a/drivers/input/misc/wistron_btns.c
+++ b/drivers/input/misc/wistron_btns.c
@@ -92,11 +92,11 @@ static void call_bios(struct regs *regs)
preempt_enable();
}
-static size_t __init locate_wistron_bios(void __iomem *base)
+static ssize_t __init locate_wistron_bios(void __iomem *base)
{
static const unsigned char __initdata signature[] =
{ 0x42, 0x21, 0x55, 0x30 };
- size_t offset;
+ ssize_t offset;
for (offset = 0; offset < 0x10000; offset += 0x10) {
if (check_signature(base + offset, signature,
@@ -109,7 +109,7 @@ static size_t __init locate_wistron_bios(void __iomem *base)
static int __init map_bios(void)
{
void __iomem *base;
- size_t offset;
+ ssize_t offset;
u32 entry_point;
base = ioremap(0xF0000, 0x10000); /* Can't fail */