ChangeSet 1.2135, 2004/10/18 09:29:11+01:00, [EMAIL PROTECTED] USB SpeedTouch cleanup.
- Don't free pages with kfree() - Clean up debugging messages - Print name of firmware file loaded. Signed-off-by: Duncan Sands <[EMAIL PROTECTED]> Signed-off-by: David Woodhouse <[EMAIL PROTECTED]> Signed-off-by: Greg Kroah-Hartman <[EMAIL PROTECTED]> drivers/usb/atm/speedtch.c | 45 +++++++++++++++++++++++---------------------- 1 files changed, 23 insertions(+), 22 deletions(-) diff -Nru a/drivers/usb/atm/speedtch.c b/drivers/usb/atm/speedtch.c --- a/drivers/usb/atm/speedtch.c 2004-10-19 08:06:01 -07:00 +++ b/drivers/usb/atm/speedtch.c 2004-10-19 08:06:01 -07:00 @@ -165,8 +165,7 @@ goto out; } if ((err = usb_set_interface(instance->u.usb_dev, 1, 1)) < 0) { - dbg("speedtch_got_firmware: usb_set_interface returned %d!", - err); + dbg("speedtch_got_firmware: usb_set_interface returned %d!", err); instance->u.status = UDSL_NO_FIRMWARE; goto out; } @@ -572,7 +571,7 @@ /* Start modem synchronisation */ if (speedtch_start_synchro(instance)) - dbg("speedtch_start_synchro: failed\n"); + dbg("speedtch_start_synchro: failed"); speedtch_got_firmware(instance, 1); @@ -585,7 +584,7 @@ the firmware themselves */ usb_driver_release_interface(&speedtch_usb_driver, intf); fail_free: - kfree(buffer); + free_page((unsigned long)buffer); fail: speedtch_got_firmware(instance, 0); } @@ -596,28 +595,30 @@ { char buf[24]; const u16 bcdDevice = instance->u.usb_dev->descriptor.bcdDevice; + const u8 major_revision = bcdDevice >> 8; + const u8 minor_revision = bcdDevice & 0xff; - sprintf(buf, "speedtch-%d.bin.%x.%02x", phase, bcdDevice >> 8, - bcdDevice & 0xff); - dbg("speedtch_find_firmware: looking for %s\n", buf); - - if (!request_firmware(fw_p, buf, &instance->u.usb_dev->dev)) - return 0; - - sprintf(buf, "speedtch-%d.bin.%x", phase, bcdDevice >> 8); - dbg("speedtch_find_firmware: looking for %s\n", buf); - - if (!request_firmware(fw_p, buf, &instance->u.usb_dev->dev)) - return 0; + sprintf(buf, "speedtch-%d.bin.%x.%02x", phase, major_revision, minor_revision); + dbg("speedtch_find_firmware: looking for %s", buf); - sprintf(buf, "speedtch-%d.bin", phase); - dbg("speedtch_find_firmware: looking for %s\n", buf); + if (request_firmware(fw_p, buf, &instance->u.usb_dev->dev)) { + sprintf(buf, "speedtch-%d.bin.%x", phase, major_revision); + dbg("speedtch_find_firmware: looking for %s", buf); + + if (request_firmware(fw_p, buf, &instance->u.usb_dev->dev)) { + sprintf(buf, "speedtch-%d.bin", phase); + dbg("speedtch_find_firmware: looking for %s", buf); + + if (request_firmware(fw_p, buf, &instance->u.usb_dev->dev)) { + dev_warn(&instance->u.usb_dev->dev, "no stage %d firmware found!", phase); + return -ENOENT; + } + } + } - if (!request_firmware(fw_p, buf, &instance->u.usb_dev->dev)) - return 0; + dev_info(&instance->u.usb_dev->dev, "found stage %d firmware %s\n", phase, buf); - dev_warn(&instance->u.usb_dev->dev, "no stage %d firmware found!", phase); - return -ENOENT; + return 0; } static int speedtch_load_firmware(void *arg) ------------------------------------------------------- This SF.net email is sponsored by: IT Product Guide on ITManagersJournal Use IT products in your business? Tell us what you think of them. Give us Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more http://productguide.itmanagersjournal.com/guidepromo.tmpl _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel