* [PATCH] synaptics: fix rmi4 bus dependencies @ 2018-01-02 19:16 Matteo Croce 2018-01-02 19:21 ` Dmitry Torokhov 0 siblings, 1 reply; 6+ messages in thread From: Matteo Croce @ 2018-01-02 19:16 UTC (permalink / raw) To: Dmitry Torokhov, linux-input; +Cc: Andrew Duggan Make MOUSE_PS2_SYNAPTICS_SMBUS select MOUSE_PS2_SYNAPTICS because if the latter is disabled the detection and switching code isn't being run. Signed-off-by: Matteo Croce <mcroce@redhat.com> --- drivers/input/mouse/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/input/mouse/Kconfig b/drivers/input/mouse/Kconfig index 89ebb8f39fee..77a0bcb611a4 100644 --- a/drivers/input/mouse/Kconfig +++ b/drivers/input/mouse/Kconfig @@ -83,6 +83,7 @@ config MOUSE_PS2_SYNAPTICS_SMBUS default y depends on MOUSE_PS2 depends on I2C=y || I2C=MOUSE_PS2 + select MOUSE_PS2_SYNAPTICS select MOUSE_PS2_SMBUS help Say Y here if you have a Synaptics RMI4 touchpad connected to -- 2.14.3 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] synaptics: fix rmi4 bus dependencies 2018-01-02 19:16 [PATCH] synaptics: fix rmi4 bus dependencies Matteo Croce @ 2018-01-02 19:21 ` Dmitry Torokhov 2018-01-02 19:37 ` Andrew Duggan 0 siblings, 1 reply; 6+ messages in thread From: Dmitry Torokhov @ 2018-01-02 19:21 UTC (permalink / raw) To: Matteo Croce; +Cc: linux-input, Andrew Duggan On Tue, Jan 02, 2018 at 08:16:09PM +0100, Matteo Croce wrote: > Make MOUSE_PS2_SYNAPTICS_SMBUS select MOUSE_PS2_SYNAPTICS because if > the latter is disabled the detection and switching code isn't being run. Hmm, it should. In synaptics.c: #if defined(CONFIG_MOUSE_PS2_SYNAPTICS) || \ defined(CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS) int synaptics_init(struct psmouse *psmouse) { struct synaptics_device_info info; int error; int retval; psmouse_reset(psmouse); ... } The intent was to allow disabling the PS/2 portion of Synaptics driver while retaining the switching to SMbus capability. Thanks. > > Signed-off-by: Matteo Croce <mcroce@redhat.com> > --- > drivers/input/mouse/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/input/mouse/Kconfig b/drivers/input/mouse/Kconfig > index 89ebb8f39fee..77a0bcb611a4 100644 > --- a/drivers/input/mouse/Kconfig > +++ b/drivers/input/mouse/Kconfig > @@ -83,6 +83,7 @@ config MOUSE_PS2_SYNAPTICS_SMBUS > default y > depends on MOUSE_PS2 > depends on I2C=y || I2C=MOUSE_PS2 > + select MOUSE_PS2_SYNAPTICS > select MOUSE_PS2_SMBUS > help > Say Y here if you have a Synaptics RMI4 touchpad connected to > -- > 2.14.3 > -- Dmitry ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] synaptics: fix rmi4 bus dependencies 2018-01-02 19:21 ` Dmitry Torokhov @ 2018-01-02 19:37 ` Andrew Duggan 2018-01-09 22:19 ` Dmitry Torokhov 0 siblings, 1 reply; 6+ messages in thread From: Andrew Duggan @ 2018-01-02 19:37 UTC (permalink / raw) To: Dmitry Torokhov, Matteo Croce; +Cc: linux-input On 01/02/2018 11:21 AM, Dmitry Torokhov wrote: > On Tue, Jan 02, 2018 at 08:16:09PM +0100, Matteo Croce wrote: >> Make MOUSE_PS2_SYNAPTICS_SMBUS select MOUSE_PS2_SYNAPTICS because if >> the latter is disabled the detection and switching code isn't being run. > Hmm, it should. In synaptics.c: > > #if defined(CONFIG_MOUSE_PS2_SYNAPTICS) || \ > defined(CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS) > > int synaptics_init(struct psmouse *psmouse) > { > struct synaptics_device_info info; > int error; > int retval; > > psmouse_reset(psmouse); > ... > } > > The intent was to allow disabling the PS/2 portion of Synaptics driver > while retaining the switching to SMbus capability. Oh, I suggested to Matteo that this patch might be needed off list. I clearly didn't look closely enough to see that MOUSE_PS2_SYNAPTICS_SMBUS is intended to be able to be used independently of MOUSE_PS2_SYNAPTICS. However, he did seem to see behavior where the mode switch did not occur when MOUSE_PS2_SYNAPTICS was disabled, but MOUSE_PS2_SYNAPTICS_SMBUS was enabled. That will need to be investigated further. Andrew > Thanks. > >> Signed-off-by: Matteo Croce <mcroce@redhat.com> >> --- >> drivers/input/mouse/Kconfig | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/drivers/input/mouse/Kconfig b/drivers/input/mouse/Kconfig >> index 89ebb8f39fee..77a0bcb611a4 100644 >> --- a/drivers/input/mouse/Kconfig >> +++ b/drivers/input/mouse/Kconfig >> @@ -83,6 +83,7 @@ config MOUSE_PS2_SYNAPTICS_SMBUS >> default y >> depends on MOUSE_PS2 >> depends on I2C=y || I2C=MOUSE_PS2 >> + select MOUSE_PS2_SYNAPTICS >> select MOUSE_PS2_SMBUS >> help >> Say Y here if you have a Synaptics RMI4 touchpad connected to >> -- >> 2.14.3 >> ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] synaptics: fix rmi4 bus dependencies 2018-01-02 19:37 ` Andrew Duggan @ 2018-01-09 22:19 ` Dmitry Torokhov 2018-01-16 18:08 ` Matteo Croce 0 siblings, 1 reply; 6+ messages in thread From: Dmitry Torokhov @ 2018-01-09 22:19 UTC (permalink / raw) To: Andrew Duggan; +Cc: Matteo Croce, linux-input On Tue, Jan 02, 2018 at 11:37:07AM -0800, Andrew Duggan wrote: > On 01/02/2018 11:21 AM, Dmitry Torokhov wrote: > > On Tue, Jan 02, 2018 at 08:16:09PM +0100, Matteo Croce wrote: > > > Make MOUSE_PS2_SYNAPTICS_SMBUS select MOUSE_PS2_SYNAPTICS because if > > > the latter is disabled the detection and switching code isn't being run. > > Hmm, it should. In synaptics.c: > > > > #if defined(CONFIG_MOUSE_PS2_SYNAPTICS) || \ > > defined(CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS) > > > > int synaptics_init(struct psmouse *psmouse) > > { > > struct synaptics_device_info info; > > int error; > > int retval; > > > > psmouse_reset(psmouse); > > ... > > } > > > > The intent was to allow disabling the PS/2 portion of Synaptics driver > > while retaining the switching to SMbus capability. > > Oh, I suggested to Matteo that this patch might be needed off list. I > clearly didn't look closely enough to see that MOUSE_PS2_SYNAPTICS_SMBUS is > intended to be able to be used independently of MOUSE_PS2_SYNAPTICS. > > However, he did seem to see behavior where the mode switch did not occur > when MOUSE_PS2_SYNAPTICS was disabled, but MOUSE_PS2_SYNAPTICS_SMBUS was > enabled. That will need to be investigated further. OK, I see what the problem is. Could you please try the version below? Thanks. -- Dmitry Input: psmouse - fix Synaptics detection when protocol is disabled When Synaptics protocol is disabled, we still need to ytry and detect the hardware, so we can switch to SMBus device if SMbus is detected, or we know that it is Synaptics device and reset it properly for the bare PS/2 protocol. Fixes: c378b5119eb0 ("Input: psmouse - factor out common protocol probing code") Reported-by: Matteo Croce <mcroce@redhat.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> --- drivers/input/mouse/psmouse-base.c | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/drivers/input/mouse/psmouse-base.c b/drivers/input/mouse/psmouse-base.c index f3eb407a3b7d..cbe12671f784 100644 --- a/drivers/input/mouse/psmouse-base.c +++ b/drivers/input/mouse/psmouse-base.c @@ -984,6 +984,21 @@ static void psmouse_apply_defaults(struct psmouse *psmouse) psmouse->pt_deactivate = NULL; } +static bool psmouse_do_detect(int (*detect)(struct psmouse *, bool), + struct psmouse *psmouse, bool allow_passthrough, + bool set_properties) +{ + if (psmouse->ps2dev.serio->id.type == SERIO_PS_PSTHRU && + !allow_passthrough) { + return false; + } + + if (set_properties) + psmouse_apply_defaults(psmouse); + + return detect(psmouse, set_properties) == 0; +} + static bool psmouse_try_protocol(struct psmouse *psmouse, enum psmouse_type type, unsigned int *max_proto, @@ -995,15 +1010,8 @@ static bool psmouse_try_protocol(struct psmouse *psmouse, if (!proto) return false; - if (psmouse->ps2dev.serio->id.type == SERIO_PS_PSTHRU && - !proto->try_passthru) { - return false; - } - - if (set_properties) - psmouse_apply_defaults(psmouse); - - if (proto->detect(psmouse, set_properties) != 0) + if (!psmouse_do_detect(proto->detect, psmouse, proto->try_passthru, + set_properties)) return false; if (set_properties && proto->init && init_allowed) { @@ -1036,8 +1044,8 @@ static int psmouse_extensions(struct psmouse *psmouse, * Always check for focaltech, this is safe as it uses pnp-id * matching. */ - if (psmouse_try_protocol(psmouse, PSMOUSE_FOCALTECH, - &max_proto, set_properties, false)) { + if (psmouse_do_detect(focaltech_detect, + psmouse, false, set_properties)) { if (max_proto > PSMOUSE_IMEX && IS_ENABLED(CONFIG_MOUSE_PS2_FOCALTECH) && (!set_properties || focaltech_init(psmouse) == 0)) { @@ -1083,8 +1091,8 @@ static int psmouse_extensions(struct psmouse *psmouse, * probing for IntelliMouse. */ if (max_proto > PSMOUSE_PS2 && - psmouse_try_protocol(psmouse, PSMOUSE_SYNAPTICS, &max_proto, - set_properties, false)) { + psmouse_do_detect(synaptics_detect, + psmouse, false, set_properties)) { synaptics_hardware = true; if (max_proto > PSMOUSE_IMEX) { ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] synaptics: fix rmi4 bus dependencies 2018-01-09 22:19 ` Dmitry Torokhov @ 2018-01-16 18:08 ` Matteo Croce 2018-01-16 23:44 ` Dmitry Torokhov 0 siblings, 1 reply; 6+ messages in thread From: Matteo Croce @ 2018-01-16 18:08 UTC (permalink / raw) To: Dmitry Torokhov; +Cc: Andrew Duggan, linux-input On Tue, Jan 9, 2018 at 11:19 PM, Dmitry Torokhov <dmitry.torokhov@gmail.com> wrote: > On Tue, Jan 02, 2018 at 11:37:07AM -0800, Andrew Duggan wrote: >> On 01/02/2018 11:21 AM, Dmitry Torokhov wrote: >> > On Tue, Jan 02, 2018 at 08:16:09PM +0100, Matteo Croce wrote: >> > > Make MOUSE_PS2_SYNAPTICS_SMBUS select MOUSE_PS2_SYNAPTICS because if >> > > the latter is disabled the detection and switching code isn't being run. >> > Hmm, it should. In synaptics.c: >> > >> > #if defined(CONFIG_MOUSE_PS2_SYNAPTICS) || \ >> > defined(CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS) >> > >> > int synaptics_init(struct psmouse *psmouse) >> > { >> > struct synaptics_device_info info; >> > int error; >> > int retval; >> > >> > psmouse_reset(psmouse); >> > ... >> > } >> > >> > The intent was to allow disabling the PS/2 portion of Synaptics driver >> > while retaining the switching to SMbus capability. >> >> Oh, I suggested to Matteo that this patch might be needed off list. I >> clearly didn't look closely enough to see that MOUSE_PS2_SYNAPTICS_SMBUS is >> intended to be able to be used independently of MOUSE_PS2_SYNAPTICS. >> >> However, he did seem to see behavior where the mode switch did not occur >> when MOUSE_PS2_SYNAPTICS was disabled, but MOUSE_PS2_SYNAPTICS_SMBUS was >> enabled. That will need to be investigated further. > > OK, I see what the problem is. Could you please try the version below? > > Thanks. > > -- > Dmitry > > > Input: psmouse - fix Synaptics detection when protocol is disabled > > When Synaptics protocol is disabled, we still need to ytry and detect the > hardware, so we can switch to SMBus device if SMbus is detected, or we know > that it is Synaptics device and reset it properly for the bare PS/2 > protocol. > > Fixes: c378b5119eb0 ("Input: psmouse - factor out common protocol probing code") > Reported-by: Matteo Croce <mcroce@redhat.com> > Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> > --- > drivers/input/mouse/psmouse-base.c | 34 +++++++++++++++++++++------------- > 1 file changed, 21 insertions(+), 13 deletions(-) > > diff --git a/drivers/input/mouse/psmouse-base.c b/drivers/input/mouse/psmouse-base.c > index f3eb407a3b7d..cbe12671f784 100644 > --- a/drivers/input/mouse/psmouse-base.c > +++ b/drivers/input/mouse/psmouse-base.c > @@ -984,6 +984,21 @@ static void psmouse_apply_defaults(struct psmouse *psmouse) > psmouse->pt_deactivate = NULL; > } > > +static bool psmouse_do_detect(int (*detect)(struct psmouse *, bool), > + struct psmouse *psmouse, bool allow_passthrough, > + bool set_properties) > +{ > + if (psmouse->ps2dev.serio->id.type == SERIO_PS_PSTHRU && > + !allow_passthrough) { > + return false; > + } > + > + if (set_properties) > + psmouse_apply_defaults(psmouse); > + > + return detect(psmouse, set_properties) == 0; > +} > + > static bool psmouse_try_protocol(struct psmouse *psmouse, > enum psmouse_type type, > unsigned int *max_proto, > @@ -995,15 +1010,8 @@ static bool psmouse_try_protocol(struct psmouse *psmouse, > if (!proto) > return false; > > - if (psmouse->ps2dev.serio->id.type == SERIO_PS_PSTHRU && > - !proto->try_passthru) { > - return false; > - } > - > - if (set_properties) > - psmouse_apply_defaults(psmouse); > - > - if (proto->detect(psmouse, set_properties) != 0) > + if (!psmouse_do_detect(proto->detect, psmouse, proto->try_passthru, > + set_properties)) > return false; > > if (set_properties && proto->init && init_allowed) { > @@ -1036,8 +1044,8 @@ static int psmouse_extensions(struct psmouse *psmouse, > * Always check for focaltech, this is safe as it uses pnp-id > * matching. > */ > - if (psmouse_try_protocol(psmouse, PSMOUSE_FOCALTECH, > - &max_proto, set_properties, false)) { > + if (psmouse_do_detect(focaltech_detect, > + psmouse, false, set_properties)) { > if (max_proto > PSMOUSE_IMEX && > IS_ENABLED(CONFIG_MOUSE_PS2_FOCALTECH) && > (!set_properties || focaltech_init(psmouse) == 0)) { > @@ -1083,8 +1091,8 @@ static int psmouse_extensions(struct psmouse *psmouse, > * probing for IntelliMouse. > */ > if (max_proto > PSMOUSE_PS2 && > - psmouse_try_protocol(psmouse, PSMOUSE_SYNAPTICS, &max_proto, > - set_properties, false)) { > + psmouse_do_detect(synaptics_detect, > + psmouse, false, set_properties)) { > synaptics_hardware = true; > > if (max_proto > PSMOUSE_IMEX) { Hi Dmitry, I've compiled the kernel with this config: $ zgrep CONFIG_MOUSE_PS2 /proc/config.gz CONFIG_MOUSE_PS2=m # CONFIG_MOUSE_PS2_ALPS is not set # CONFIG_MOUSE_PS2_BYD is not set # CONFIG_MOUSE_PS2_LOGIPS2PP is not set # CONFIG_MOUSE_PS2_SYNAPTICS is not set CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y # CONFIG_MOUSE_PS2_CYPRESS is not set # CONFIG_MOUSE_PS2_LIFEBOOK is not set CONFIG_MOUSE_PS2_TRACKPOINT=y # CONFIG_MOUSE_PS2_ELANTECH is not set # CONFIG_MOUSE_PS2_SENTELIC is not set # CONFIG_MOUSE_PS2_TOUCHKIT is not set # CONFIG_MOUSE_PS2_FOCALTECH is not set CONFIG_MOUSE_PS2_SMBUS=y and the mouse is correctly detected as rmi4: $ dmesg |grep rmi4 [ 20.750242] rmi4_smbus 7-002c: registering SMbus-connected sensor [ 20.808625] rmi4_f01 rmi4-00.fn01: found RMI device, manufacturer: Synaptics, product: TM3145-003, fw id: 2073050 [ 20.905347] input: Synaptics TM3145-003 as /devices/rmi4-00/input/input16 [ 21.299073] input: TPPS/2 IBM TrackPoint as /devices/rmi4-00/rmi4-00.fn03/serio2/input/input17 Anyway, is CONFIG_MOUSE_PS2_TRACKPOINT still needed for the trackpoint or CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS will handle both? Regards, -- Matteo Croce per aspera ad upstream ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] synaptics: fix rmi4 bus dependencies 2018-01-16 18:08 ` Matteo Croce @ 2018-01-16 23:44 ` Dmitry Torokhov 0 siblings, 0 replies; 6+ messages in thread From: Dmitry Torokhov @ 2018-01-16 23:44 UTC (permalink / raw) To: Matteo Croce; +Cc: Andrew Duggan, linux-input On Tue, Jan 16, 2018 at 07:08:04PM +0100, Matteo Croce wrote: > On Tue, Jan 9, 2018 at 11:19 PM, Dmitry Torokhov > <dmitry.torokhov@gmail.com> wrote: > > On Tue, Jan 02, 2018 at 11:37:07AM -0800, Andrew Duggan wrote: > >> On 01/02/2018 11:21 AM, Dmitry Torokhov wrote: > >> > On Tue, Jan 02, 2018 at 08:16:09PM +0100, Matteo Croce wrote: > >> > > Make MOUSE_PS2_SYNAPTICS_SMBUS select MOUSE_PS2_SYNAPTICS because if > >> > > the latter is disabled the detection and switching code isn't being run. > >> > Hmm, it should. In synaptics.c: > >> > > >> > #if defined(CONFIG_MOUSE_PS2_SYNAPTICS) || \ > >> > defined(CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS) > >> > > >> > int synaptics_init(struct psmouse *psmouse) > >> > { > >> > struct synaptics_device_info info; > >> > int error; > >> > int retval; > >> > > >> > psmouse_reset(psmouse); > >> > ... > >> > } > >> > > >> > The intent was to allow disabling the PS/2 portion of Synaptics driver > >> > while retaining the switching to SMbus capability. > >> > >> Oh, I suggested to Matteo that this patch might be needed off list. I > >> clearly didn't look closely enough to see that MOUSE_PS2_SYNAPTICS_SMBUS is > >> intended to be able to be used independently of MOUSE_PS2_SYNAPTICS. > >> > >> However, he did seem to see behavior where the mode switch did not occur > >> when MOUSE_PS2_SYNAPTICS was disabled, but MOUSE_PS2_SYNAPTICS_SMBUS was > >> enabled. That will need to be investigated further. > > > > OK, I see what the problem is. Could you please try the version below? > > > > Thanks. > > > > -- > > Dmitry > > > > > > Input: psmouse - fix Synaptics detection when protocol is disabled > > > > When Synaptics protocol is disabled, we still need to ytry and detect the > > hardware, so we can switch to SMBus device if SMbus is detected, or we know > > that it is Synaptics device and reset it properly for the bare PS/2 > > protocol. > > > > Fixes: c378b5119eb0 ("Input: psmouse - factor out common protocol probing code") > > Reported-by: Matteo Croce <mcroce@redhat.com> > > Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> > > --- > > drivers/input/mouse/psmouse-base.c | 34 +++++++++++++++++++++------------- > > 1 file changed, 21 insertions(+), 13 deletions(-) > > > > diff --git a/drivers/input/mouse/psmouse-base.c b/drivers/input/mouse/psmouse-base.c > > index f3eb407a3b7d..cbe12671f784 100644 > > --- a/drivers/input/mouse/psmouse-base.c > > +++ b/drivers/input/mouse/psmouse-base.c > > @@ -984,6 +984,21 @@ static void psmouse_apply_defaults(struct psmouse *psmouse) > > psmouse->pt_deactivate = NULL; > > } > > > > +static bool psmouse_do_detect(int (*detect)(struct psmouse *, bool), > > + struct psmouse *psmouse, bool allow_passthrough, > > + bool set_properties) > > +{ > > + if (psmouse->ps2dev.serio->id.type == SERIO_PS_PSTHRU && > > + !allow_passthrough) { > > + return false; > > + } > > + > > + if (set_properties) > > + psmouse_apply_defaults(psmouse); > > + > > + return detect(psmouse, set_properties) == 0; > > +} > > + > > static bool psmouse_try_protocol(struct psmouse *psmouse, > > enum psmouse_type type, > > unsigned int *max_proto, > > @@ -995,15 +1010,8 @@ static bool psmouse_try_protocol(struct psmouse *psmouse, > > if (!proto) > > return false; > > > > - if (psmouse->ps2dev.serio->id.type == SERIO_PS_PSTHRU && > > - !proto->try_passthru) { > > - return false; > > - } > > - > > - if (set_properties) > > - psmouse_apply_defaults(psmouse); > > - > > - if (proto->detect(psmouse, set_properties) != 0) > > + if (!psmouse_do_detect(proto->detect, psmouse, proto->try_passthru, > > + set_properties)) > > return false; > > > > if (set_properties && proto->init && init_allowed) { > > @@ -1036,8 +1044,8 @@ static int psmouse_extensions(struct psmouse *psmouse, > > * Always check for focaltech, this is safe as it uses pnp-id > > * matching. > > */ > > - if (psmouse_try_protocol(psmouse, PSMOUSE_FOCALTECH, > > - &max_proto, set_properties, false)) { > > + if (psmouse_do_detect(focaltech_detect, > > + psmouse, false, set_properties)) { > > if (max_proto > PSMOUSE_IMEX && > > IS_ENABLED(CONFIG_MOUSE_PS2_FOCALTECH) && > > (!set_properties || focaltech_init(psmouse) == 0)) { > > @@ -1083,8 +1091,8 @@ static int psmouse_extensions(struct psmouse *psmouse, > > * probing for IntelliMouse. > > */ > > if (max_proto > PSMOUSE_PS2 && > > - psmouse_try_protocol(psmouse, PSMOUSE_SYNAPTICS, &max_proto, > > - set_properties, false)) { > > + psmouse_do_detect(synaptics_detect, > > + psmouse, false, set_properties)) { > > synaptics_hardware = true; > > > > if (max_proto > PSMOUSE_IMEX) { > > Hi Dmitry, > > I've compiled the kernel with this config: > > $ zgrep CONFIG_MOUSE_PS2 /proc/config.gz > CONFIG_MOUSE_PS2=m > # CONFIG_MOUSE_PS2_ALPS is not set > # CONFIG_MOUSE_PS2_BYD is not set > # CONFIG_MOUSE_PS2_LOGIPS2PP is not set > # CONFIG_MOUSE_PS2_SYNAPTICS is not set > CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y > # CONFIG_MOUSE_PS2_CYPRESS is not set > # CONFIG_MOUSE_PS2_LIFEBOOK is not set > CONFIG_MOUSE_PS2_TRACKPOINT=y > # CONFIG_MOUSE_PS2_ELANTECH is not set > # CONFIG_MOUSE_PS2_SENTELIC is not set > # CONFIG_MOUSE_PS2_TOUCHKIT is not set > # CONFIG_MOUSE_PS2_FOCALTECH is not set > CONFIG_MOUSE_PS2_SMBUS=y > > and the mouse is correctly detected as rmi4: > > $ dmesg |grep rmi4 > [ 20.750242] rmi4_smbus 7-002c: registering SMbus-connected sensor > [ 20.808625] rmi4_f01 rmi4-00.fn01: found RMI device, manufacturer: > Synaptics, product: TM3145-003, fw id: 2073050 > [ 20.905347] input: Synaptics TM3145-003 as /devices/rmi4-00/input/input16 > [ 21.299073] input: TPPS/2 IBM TrackPoint as > /devices/rmi4-00/rmi4-00.fn03/serio2/input/input17 Great, putting you as tested-by then. > > Anyway, is CONFIG_MOUSE_PS2_TRACKPOINT still needed for the trackpoint > or CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS will handle both? No, the trackpoint is still a PS/2 device, it is simply attached as a "guest" or pass-through port of an RMI device. You still need CONFIG_MOUSE_PS2_TRACKPOINT if you want its advanced features. Thanks. -- Dmitry ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2018-01-16 23:44 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-01-02 19:16 [PATCH] synaptics: fix rmi4 bus dependencies Matteo Croce 2018-01-02 19:21 ` Dmitry Torokhov 2018-01-02 19:37 ` Andrew Duggan 2018-01-09 22:19 ` Dmitry Torokhov 2018-01-16 18:08 ` Matteo Croce 2018-01-16 23:44 ` Dmitry Torokhov
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox