diff options
| -rw-r--r-- | drivers/hwmon/hdaps.c | 41 | ||||
| -rw-r--r-- | drivers/mmc/wbsd.c | 7 | ||||
| -rw-r--r-- | net/ipv4/tcp_vegas.c | 2 |
3 files changed, 28 insertions, 22 deletions
diff --git a/drivers/hwmon/hdaps.c b/drivers/hwmon/hdaps.c index 1e5dfc7805e2..c8c84e0819fb 100644 --- a/drivers/hwmon/hdaps.c +++ b/drivers/hwmon/hdaps.c | |||
| @@ -60,9 +60,11 @@ | |||
| 60 | 60 | ||
| 61 | #define HDAPS_POLL_PERIOD (HZ/20) /* poll for input every 1/20s */ | 61 | #define HDAPS_POLL_PERIOD (HZ/20) /* poll for input every 1/20s */ |
| 62 | #define HDAPS_INPUT_FUZZ 4 /* input event threshold */ | 62 | #define HDAPS_INPUT_FUZZ 4 /* input event threshold */ |
| 63 | #define HDAPS_INPUT_FLAT 4 | ||
| 63 | 64 | ||
| 64 | static struct timer_list hdaps_timer; | 65 | static struct timer_list hdaps_timer; |
| 65 | static struct platform_device *pdev; | 66 | static struct platform_device *pdev; |
| 67 | static struct input_dev *hdaps_idev; | ||
| 66 | static unsigned int hdaps_invert; | 68 | static unsigned int hdaps_invert; |
| 67 | static u8 km_activity; | 69 | static u8 km_activity; |
| 68 | static int rest_x; | 70 | static int rest_x; |
| @@ -309,18 +311,6 @@ static struct device_driver hdaps_driver = { | |||
| 309 | .resume = hdaps_resume | 311 | .resume = hdaps_resume |
| 310 | }; | 312 | }; |
| 311 | 313 | ||
| 312 | /* Input class stuff */ | ||
| 313 | |||
| 314 | static struct input_dev hdaps_idev = { | ||
| 315 | .name = "hdaps", | ||
| 316 | .evbit = { BIT(EV_ABS) }, | ||
| 317 | .absbit = { BIT(ABS_X) | BIT(ABS_Y) }, | ||
| 318 | .absmin = { [ABS_X] = -256, [ABS_Y] = -256 }, | ||
| 319 | .absmax = { [ABS_X] = 256, [ABS_Y] = 256 }, | ||
| 320 | .absfuzz = { [ABS_X] = HDAPS_INPUT_FUZZ, [ABS_Y] = HDAPS_INPUT_FUZZ }, | ||
| 321 | .absflat = { [ABS_X] = HDAPS_INPUT_FUZZ, [ABS_Y] = HDAPS_INPUT_FUZZ }, | ||
| 322 | }; | ||
| 323 | |||
| 324 | /* | 314 | /* |
| 325 | * hdaps_calibrate - Set our "resting" values. Callers must hold hdaps_sem. | 315 | * hdaps_calibrate - Set our "resting" values. Callers must hold hdaps_sem. |
| 326 | */ | 316 | */ |
| @@ -342,9 +332,9 @@ static void hdaps_mousedev_poll(unsigned long unused) | |||
| 342 | if (__hdaps_read_pair(HDAPS_PORT_XPOS, HDAPS_PORT_YPOS, &x, &y)) | 332 | if (__hdaps_read_pair(HDAPS_PORT_XPOS, HDAPS_PORT_YPOS, &x, &y)) |
| 343 | goto out; | 333 | goto out; |
| 344 | 334 | ||
| 345 | input_report_abs(&hdaps_idev, ABS_X, x - rest_x); | 335 | input_report_abs(hdaps_idev, ABS_X, x - rest_x); |
| 346 | input_report_abs(&hdaps_idev, ABS_Y, y - rest_y); | 336 | input_report_abs(hdaps_idev, ABS_Y, y - rest_y); |
| 347 | input_sync(&hdaps_idev); | 337 | input_sync(hdaps_idev); |
| 348 | 338 | ||
| 349 | mod_timer(&hdaps_timer, jiffies + HDAPS_POLL_PERIOD); | 339 | mod_timer(&hdaps_timer, jiffies + HDAPS_POLL_PERIOD); |
| 350 | 340 | ||
| @@ -564,12 +554,25 @@ static int __init hdaps_init(void) | |||
| 564 | if (ret) | 554 | if (ret) |
| 565 | goto out_device; | 555 | goto out_device; |
| 566 | 556 | ||
| 557 | hdaps_idev = input_allocate_device(); | ||
| 558 | if (!hdaps_idev) { | ||
| 559 | ret = -ENOMEM; | ||
| 560 | goto out_group; | ||
| 561 | } | ||
| 562 | |||
| 567 | /* initial calibrate for the input device */ | 563 | /* initial calibrate for the input device */ |
| 568 | hdaps_calibrate(); | 564 | hdaps_calibrate(); |
| 569 | 565 | ||
| 570 | /* initialize the input class */ | 566 | /* initialize the input class */ |
| 571 | hdaps_idev.dev = &pdev->dev; | 567 | hdaps_idev->name = "hdaps"; |
| 572 | input_register_device(&hdaps_idev); | 568 | hdaps_idev->cdev.dev = &pdev->dev; |
| 569 | hdaps_idev->evbit[0] = BIT(EV_ABS); | ||
| 570 | input_set_abs_params(hdaps_idev, ABS_X, | ||
| 571 | -256, 256, HDAPS_INPUT_FUZZ, HDAPS_INPUT_FLAT); | ||
| 572 | input_set_abs_params(hdaps_idev, ABS_X, | ||
| 573 | -256, 256, HDAPS_INPUT_FUZZ, HDAPS_INPUT_FLAT); | ||
| 574 | |||
| 575 | input_register_device(hdaps_idev); | ||
| 573 | 576 | ||
| 574 | /* start up our timer for the input device */ | 577 | /* start up our timer for the input device */ |
| 575 | init_timer(&hdaps_timer); | 578 | init_timer(&hdaps_timer); |
| @@ -580,6 +583,8 @@ static int __init hdaps_init(void) | |||
| 580 | printk(KERN_INFO "hdaps: driver successfully loaded.\n"); | 583 | printk(KERN_INFO "hdaps: driver successfully loaded.\n"); |
| 581 | return 0; | 584 | return 0; |
| 582 | 585 | ||
| 586 | out_group: | ||
| 587 | sysfs_remove_group(&pdev->dev.kobj, &hdaps_attribute_group); | ||
| 583 | out_device: | 588 | out_device: |
| 584 | platform_device_unregister(pdev); | 589 | platform_device_unregister(pdev); |
| 585 | out_driver: | 590 | out_driver: |
| @@ -594,7 +599,7 @@ out: | |||
| 594 | static void __exit hdaps_exit(void) | 599 | static void __exit hdaps_exit(void) |
| 595 | { | 600 | { |
| 596 | del_timer_sync(&hdaps_timer); | 601 | del_timer_sync(&hdaps_timer); |
| 597 | input_unregister_device(&hdaps_idev); | 602 | input_unregister_device(hdaps_idev); |
| 598 | sysfs_remove_group(&pdev->dev.kobj, &hdaps_attribute_group); | 603 | sysfs_remove_group(&pdev->dev.kobj, &hdaps_attribute_group); |
| 599 | platform_device_unregister(pdev); | 604 | platform_device_unregister(pdev); |
| 600 | driver_unregister(&hdaps_driver); | 605 | driver_unregister(&hdaps_driver); |
diff --git a/drivers/mmc/wbsd.c b/drivers/mmc/wbsd.c index e954b8354fef..6166ceb95717 100644 --- a/drivers/mmc/wbsd.c +++ b/drivers/mmc/wbsd.c | |||
| @@ -42,7 +42,7 @@ | |||
| 42 | #include "wbsd.h" | 42 | #include "wbsd.h" |
| 43 | 43 | ||
| 44 | #define DRIVER_NAME "wbsd" | 44 | #define DRIVER_NAME "wbsd" |
| 45 | #define DRIVER_VERSION "1.4" | 45 | #define DRIVER_VERSION "1.5" |
| 46 | 46 | ||
| 47 | #ifdef CONFIG_MMC_DEBUG | 47 | #ifdef CONFIG_MMC_DEBUG |
| 48 | #define DBG(x...) \ | 48 | #define DBG(x...) \ |
| @@ -2042,7 +2042,7 @@ static struct device_driver wbsd_driver = { | |||
| 2042 | .name = DRIVER_NAME, | 2042 | .name = DRIVER_NAME, |
| 2043 | .bus = &platform_bus_type, | 2043 | .bus = &platform_bus_type, |
| 2044 | .probe = wbsd_probe, | 2044 | .probe = wbsd_probe, |
| 2045 | .remove = wbsd_remove, | 2045 | .remove = __devexit_p(wbsd_remove), |
| 2046 | 2046 | ||
| 2047 | .suspend = wbsd_suspend, | 2047 | .suspend = wbsd_suspend, |
| 2048 | .resume = wbsd_resume, | 2048 | .resume = wbsd_resume, |
| @@ -2054,7 +2054,7 @@ static struct pnp_driver wbsd_pnp_driver = { | |||
| 2054 | .name = DRIVER_NAME, | 2054 | .name = DRIVER_NAME, |
| 2055 | .id_table = pnp_dev_table, | 2055 | .id_table = pnp_dev_table, |
| 2056 | .probe = wbsd_pnp_probe, | 2056 | .probe = wbsd_pnp_probe, |
| 2057 | .remove = wbsd_pnp_remove, | 2057 | .remove = __devexit_p(wbsd_pnp_remove), |
| 2058 | }; | 2058 | }; |
| 2059 | 2059 | ||
| 2060 | #endif /* CONFIG_PNP */ | 2060 | #endif /* CONFIG_PNP */ |
| @@ -2127,6 +2127,7 @@ module_param(irq, uint, 0444); | |||
| 2127 | module_param(dma, int, 0444); | 2127 | module_param(dma, int, 0444); |
| 2128 | 2128 | ||
| 2129 | MODULE_LICENSE("GPL"); | 2129 | MODULE_LICENSE("GPL"); |
| 2130 | MODULE_AUTHOR("Pierre Ossman <drzeus@drzeus.cx>"); | ||
| 2130 | MODULE_DESCRIPTION("Winbond W83L51xD SD/MMC card interface driver"); | 2131 | MODULE_DESCRIPTION("Winbond W83L51xD SD/MMC card interface driver"); |
| 2131 | MODULE_VERSION(DRIVER_VERSION); | 2132 | MODULE_VERSION(DRIVER_VERSION); |
| 2132 | 2133 | ||
diff --git a/net/ipv4/tcp_vegas.c b/net/ipv4/tcp_vegas.c index 4376814d29fb..b7d296a8ac6d 100644 --- a/net/ipv4/tcp_vegas.c +++ b/net/ipv4/tcp_vegas.c | |||
| @@ -236,7 +236,7 @@ static void tcp_vegas_cong_avoid(struct sock *sk, u32 ack, | |||
| 236 | /* We don't have enough RTT samples to do the Vegas | 236 | /* We don't have enough RTT samples to do the Vegas |
| 237 | * calculation, so we'll behave like Reno. | 237 | * calculation, so we'll behave like Reno. |
| 238 | */ | 238 | */ |
| 239 | tcp_reno_cong_avoid(sk, ack, seq_rtt, in_flight, cnt); | 239 | tcp_reno_cong_avoid(sk, ack, seq_rtt, in_flight, flag); |
| 240 | } else { | 240 | } else { |
| 241 | u32 rtt, target_cwnd, diff; | 241 | u32 rtt, target_cwnd, diff; |
| 242 | 242 | ||
