aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2019-04-27 19:27:02 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2019-04-27 19:27:02 -0400
commit25cce03b1d06e4b742f6dafdda2f4d80c13bdc18 (patch)
treee6698796fe1063223bbdb413d4a1314162edcab3 /drivers/input
parent037904a22bf8b2c999a6e2a8ba971b549c1e9600 (diff)
parent3a349763cf11e63534b8f2d302f2d0c790566497 (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Pull input fixes from Dmitry Torokhov: "Just a couple of fixups for Synaptics RMI4 driver and allowing snvs_pwrkey to be selected on more boards" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: synaptics-rmi4 - write config register values to the right offset Input: synaptics-rmi4 - fix possible double free Input: snvs_pwrkey - make it depend on ARCH_MXC
Diffstat (limited to 'drivers/input')
-rw-r--r--drivers/input/keyboard/Kconfig2
-rw-r--r--drivers/input/rmi4/rmi_driver.c6
-rw-r--r--drivers/input/rmi4/rmi_f11.c2
3 files changed, 3 insertions, 7 deletions
diff --git a/drivers/input/keyboard/Kconfig b/drivers/input/keyboard/Kconfig
index a878351f1643..52d7f55fca32 100644
--- a/drivers/input/keyboard/Kconfig
+++ b/drivers/input/keyboard/Kconfig
@@ -420,7 +420,7 @@ config KEYBOARD_MPR121
420 420
421config KEYBOARD_SNVS_PWRKEY 421config KEYBOARD_SNVS_PWRKEY
422 tristate "IMX SNVS Power Key Driver" 422 tristate "IMX SNVS Power Key Driver"
423 depends on SOC_IMX6SX || SOC_IMX7D 423 depends on ARCH_MXC || COMPILE_TEST
424 depends on OF 424 depends on OF
425 help 425 help
426 This is the snvs powerkey driver for the Freescale i.MX application 426 This is the snvs powerkey driver for the Freescale i.MX application
diff --git a/drivers/input/rmi4/rmi_driver.c b/drivers/input/rmi4/rmi_driver.c
index fc3ab93b7aea..7fb358f96195 100644
--- a/drivers/input/rmi4/rmi_driver.c
+++ b/drivers/input/rmi4/rmi_driver.c
@@ -860,7 +860,7 @@ static int rmi_create_function(struct rmi_device *rmi_dev,
860 860
861 error = rmi_register_function(fn); 861 error = rmi_register_function(fn);
862 if (error) 862 if (error)
863 goto err_put_fn; 863 return error;
864 864
865 if (pdt->function_number == 0x01) 865 if (pdt->function_number == 0x01)
866 data->f01_container = fn; 866 data->f01_container = fn;
@@ -870,10 +870,6 @@ static int rmi_create_function(struct rmi_device *rmi_dev,
870 list_add_tail(&fn->node, &data->function_list); 870 list_add_tail(&fn->node, &data->function_list);
871 871
872 return RMI_SCAN_CONTINUE; 872 return RMI_SCAN_CONTINUE;
873
874err_put_fn:
875 put_device(&fn->dev);
876 return error;
877} 873}
878 874
879void rmi_enable_irq(struct rmi_device *rmi_dev, bool clear_wake) 875void rmi_enable_irq(struct rmi_device *rmi_dev, bool clear_wake)
diff --git a/drivers/input/rmi4/rmi_f11.c b/drivers/input/rmi4/rmi_f11.c
index df64d6aed4f7..93901ebd122a 100644
--- a/drivers/input/rmi4/rmi_f11.c
+++ b/drivers/input/rmi4/rmi_f11.c
@@ -1230,7 +1230,7 @@ static int rmi_f11_initialize(struct rmi_function *fn)
1230 } 1230 }
1231 1231
1232 rc = f11_write_control_regs(fn, &f11->sens_query, 1232 rc = f11_write_control_regs(fn, &f11->sens_query,
1233 &f11->dev_controls, fn->fd.query_base_addr); 1233 &f11->dev_controls, fn->fd.control_base_addr);
1234 if (rc) 1234 if (rc)
1235 dev_warn(&fn->dev, "Failed to write control registers\n"); 1235 dev_warn(&fn->dev, "Failed to write control registers\n");
1236 1236