Skip to content

Commit

Permalink
hwmon: (f71882fg) Fix build warning
Browse files Browse the repository at this point in the history
Fix:

warning: 'address' may be used uninitialized in this function [-Wuninitialized]

While this is a false warning, the patch reduces module size on x86_64 by
approximately 175 bytes, so it is still worth the effort.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Acked-by: Hans de Goede <hdegoede@redhat.com>
  • Loading branch information
Guenter Roeck committed Sep 24, 2012
1 parent 979570e commit 0038389
Showing 1 changed file with 17 additions and 16 deletions.
33 changes: 17 additions & 16 deletions drivers/hwmon/f71882fg.c
Original file line number Diff line number Diff line change
Expand Up @@ -2532,10 +2532,10 @@ static int f71882fg_remove(struct platform_device *pdev)
return 0;
}

static int __init f71882fg_find(int sioaddr, unsigned short *address,
struct f71882fg_sio_data *sio_data)
static int __init f71882fg_find(int sioaddr, struct f71882fg_sio_data *sio_data)
{
u16 devid;
unsigned short address;
int err = superio_enter(sioaddr);
if (err)
return err;
Expand Down Expand Up @@ -2603,25 +2603,25 @@ static int __init f71882fg_find(int sioaddr, unsigned short *address,
goto exit;
}

*address = superio_inw(sioaddr, SIO_REG_ADDR);
if (*address == 0) {
address = superio_inw(sioaddr, SIO_REG_ADDR);
if (address == 0) {
pr_warn("Base address not set\n");
err = -ENODEV;
goto exit;
}
*address &= ~(REGION_LENGTH - 1); /* Ignore 3 LSB */
address &= ~(REGION_LENGTH - 1); /* Ignore 3 LSB */

err = 0;
err = address;
pr_info("Found %s chip at %#x, revision %d\n",
f71882fg_names[sio_data->type], (unsigned int)*address,
f71882fg_names[sio_data->type], (unsigned int)address,
(int)superio_inb(sioaddr, SIO_REG_DEVREV));
exit:
superio_exit(sioaddr);
return err;
}

static int __init f71882fg_device_add(unsigned short address,
const struct f71882fg_sio_data *sio_data)
static int __init f71882fg_device_add(int address,
const struct f71882fg_sio_data *sio_data)
{
struct resource res = {
.start = address,
Expand Down Expand Up @@ -2668,19 +2668,21 @@ static int __init f71882fg_device_add(unsigned short address,

static int __init f71882fg_init(void)
{
int err = -ENODEV;
unsigned short address;
int err;
int address;
struct f71882fg_sio_data sio_data;

memset(&sio_data, 0, sizeof(sio_data));

if (f71882fg_find(0x2e, &address, &sio_data) &&
f71882fg_find(0x4e, &address, &sio_data))
goto exit;
address = f71882fg_find(0x2e, &sio_data);
if (address < 0)
address = f71882fg_find(0x4e, &sio_data);
if (address < 0)
return address;

err = platform_driver_register(&f71882fg_driver);
if (err)
goto exit;
return err;

err = f71882fg_device_add(address, &sio_data);
if (err)
Expand All @@ -2690,7 +2692,6 @@ static int __init f71882fg_init(void)

exit_driver:
platform_driver_unregister(&f71882fg_driver);
exit:
return err;
}

Expand Down

0 comments on commit 0038389

Please sign in to comment.