mirror of https://github.com/torvalds/linux.git
CONFIG_INPUT may itself be a loadable module, but the sirf power key driver is listed as 'bool', which makes it possible to select a broken configuration with the driver built-in but the subsystem not loaded. In this configuration, we get a link error: drivers/input/built-in.o: In function `sirfsoc_pwrc_isr': drivers/input/misc/sirfsoc-onkey.c:63: undefined reference to `input_event' drivers/input/built-in.o: In function `sirfsoc_pwrc_isr': include/linux/input.h:414: undefined reference to `input_event' drivers/input/built-in.o: In function `sirfsoc_pwrc_probe': drivers/input/misc/sirfsoc-onkey.c:132: undefined reference to `devm_input_allocate_device' drivers/input/misc/sirfsoc-onkey.c:139: undefined reference to `input_set_capability' drivers/input/misc/sirfsoc-onkey.c:161: undefined reference to `input_register_device' drivers/input/built-in.o: In function `sirfsoc_pwrc_report_event': drivers/input/misc/sirfsoc-onkey.c:48: undefined reference to `input_event' drivers/input/built-in.o: In function `sirfsoc_pwrc_report_event': include/linux/input.h:414: undefined reference to `input_event' drivers/input/built-in.o:(.debug_addr+0x24): undefined reference to `input_event' drivers/input/built-in.o:(.debug_addr+0xbc): undefined reference to `devm_input_allocate_device' drivers/input/built-in.o:(.debug_addr+0x104): undefined reference to `input_set_capability' drivers/input/built-in.o:(.debug_addr+0x128): undefined reference to `input_register_device' This marks the driver as 'tristate' so it becomes possible to have it in a loadable module, mainly to help with randconfig builds. We also have to add a missing semicolon here, which ended up not being needed in built-in mode because the following MODULE_DEVICE_TABLE is an empty macro followed by another semicolon then. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> |
||
|---|---|---|
| .. | ||
| 88pm80x_onkey.c | ||
| 88pm860x_onkey.c | ||
| Kconfig | ||
| Makefile | ||
| ab8500-ponkey.c | ||
| ad714x-i2c.c | ||
| ad714x-spi.c | ||
| ad714x.c | ||
| ad714x.h | ||
| adxl34x-i2c.c | ||
| adxl34x-spi.c | ||
| adxl34x.c | ||
| adxl34x.h | ||
| apanel.c | ||
| arizona-haptics.c | ||
| ati_remote2.c | ||
| atlas_btns.c | ||
| axp20x-pek.c | ||
| bfin_rotary.c | ||
| bma150.c | ||
| cm109.c | ||
| cma3000_d0x.c | ||
| cma3000_d0x.h | ||
| cma3000_d0x_i2c.c | ||
| cobalt_btns.c | ||
| da9052_onkey.c | ||
| da9055_onkey.c | ||
| da9063_onkey.c | ||
| dm355evm_keys.c | ||
| drv260x.c | ||
| drv2665.c | ||
| drv2667.c | ||
| e3x0-button.c | ||
| gp2ap002a00f.c | ||
| gpio-beeper.c | ||
| gpio_tilt_polled.c | ||
| hp_sdc_rtc.c | ||
| ideapad_slidebar.c | ||
| ims-pcu.c | ||
| ixp4xx-beeper.c | ||
| keyspan_remote.c | ||
| kxtj9.c | ||
| m68kspkr.c | ||
| max8925_onkey.c | ||
| max8997_haptic.c | ||
| max77693-haptic.c | ||
| mc13783-pwrbutton.c | ||
| mma8450.c | ||
| mpu3050.c | ||
| palmas-pwrbutton.c | ||
| pcap_keys.c | ||
| pcf8574_keypad.c | ||
| pcf50633-input.c | ||
| pcspkr.c | ||
| pm8xxx-vibrator.c | ||
| pm8941-pwrkey.c | ||
| pmic8xxx-pwrkey.c | ||
| powermate.c | ||
| pwm-beeper.c | ||
| rb532_button.c | ||
| regulator-haptic.c | ||
| retu-pwrbutton.c | ||
| rotary_encoder.c | ||
| sgi_btns.c | ||
| sirfsoc-onkey.c | ||
| soc_button_array.c | ||
| sparcspkr.c | ||
| tps65218-pwrbutton.c | ||
| twl4030-pwrbutton.c | ||
| twl4030-vibra.c | ||
| twl6040-vibra.c | ||
| uinput.c | ||
| wistron_btns.c | ||
| wm831x-on.c | ||
| xen-kbdfront.c | ||
| yealink.c | ||
| yealink.h | ||