Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'char-misc-3.9-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc

Pull char/misc fixes from Greg Kroah-Hartman:
"Here are some tiny fixes for the w1 drivers and the final removal
patch for getting rid of CONFIG_EXPERIMENTAL (all users of it are now
gone from your tree, this just drops the Kconfig item itself.)

All have been in the linux-next tree for a while"

* tag 'char-misc-3.9-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
final removal of CONFIG_EXPERIMENTAL
w1: fix oops when w1_search is called from netlink connector
w1-gpio: fix unused variable warning
w1-gpio: remove erroneous __exit and __exit_p()
ARM: w1-gpio: fix erroneous gpio requests

+10 -7
+1
arch/arm/mach-at91/board-foxg20.c
··· 176 176 /* If you choose to use a pin other than PB16 it needs to be 3.3V */ 177 177 .pin = AT91_PIN_PB16, 178 178 .is_open_drain = 1, 179 + .ext_pullup_enable_pin = -EINVAL, 179 180 }; 180 181 181 182 static struct platform_device w1_device = {
+1
arch/arm/mach-at91/board-stamp9g20.c
··· 188 188 static struct w1_gpio_platform_data w1_gpio_pdata = { 189 189 .pin = AT91_PIN_PA29, 190 190 .is_open_drain = 1, 191 + .ext_pullup_enable_pin = -EINVAL, 191 192 }; 192 193 193 194 static struct platform_device w1_device = {
+1
arch/arm/mach-ixp4xx/vulcan-setup.c
··· 163 163 164 164 static struct w1_gpio_platform_data vulcan_w1_gpio_pdata = { 165 165 .pin = 14, 166 + .ext_pullup_enable_pin = -EINVAL, 166 167 }; 167 168 168 169 static struct platform_device vulcan_w1_gpio = {
+1
arch/arm/mach-pxa/raumfeld.c
··· 505 505 .pin = GPIO_ONE_WIRE, 506 506 .is_open_drain = 0, 507 507 .enable_external_pullup = w1_enable_external_pullup, 508 + .ext_pullup_enable_pin = -EINVAL, 508 509 }; 509 510 510 511 struct platform_device raumfeld_w1_gpio_device = {
+4 -2
drivers/w1/masters/w1-gpio.c
··· 47 47 return gpio_get_value(pdata->pin) ? 1 : 0; 48 48 } 49 49 50 + #if defined(CONFIG_OF) 50 51 static struct of_device_id w1_gpio_dt_ids[] = { 51 52 { .compatible = "w1-gpio" }, 52 53 {} 53 54 }; 54 55 MODULE_DEVICE_TABLE(of, w1_gpio_dt_ids); 56 + #endif 55 57 56 58 static int w1_gpio_probe_dt(struct platform_device *pdev) 57 59 { ··· 160 158 return err; 161 159 } 162 160 163 - static int __exit w1_gpio_remove(struct platform_device *pdev) 161 + static int w1_gpio_remove(struct platform_device *pdev) 164 162 { 165 163 struct w1_bus_master *master = platform_get_drvdata(pdev); 166 164 struct w1_gpio_platform_data *pdata = pdev->dev.platform_data; ··· 212 210 .of_match_table = of_match_ptr(w1_gpio_dt_ids), 213 211 }, 214 212 .probe = w1_gpio_probe, 215 - .remove = __exit_p(w1_gpio_remove), 213 + .remove = w1_gpio_remove, 216 214 .suspend = w1_gpio_suspend, 217 215 .resume = w1_gpio_resume, 218 216 };
+2 -1
drivers/w1/w1.c
··· 924 924 tmp64 = (triplet_ret >> 2); 925 925 rn |= (tmp64 << i); 926 926 927 - if (kthread_should_stop()) { 927 + /* ensure we're called from kthread and not by netlink callback */ 928 + if (!dev->priv && kthread_should_stop()) { 928 929 mutex_unlock(&dev->bus_mutex); 929 930 dev_dbg(&dev->dev, "Abort w1_search\n"); 930 931 return;
-4
init/Kconfig
··· 28 28 29 29 menu "General setup" 30 30 31 - config EXPERIMENTAL 32 - bool 33 - default y 34 - 35 31 config BROKEN 36 32 bool 37 33