lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <alpine.LNX.2.00.1408141143130.15220@pobox.suse.cz> Date: Thu, 14 Aug 2014 11:43:25 +0200 (CEST) From: Jiri Kosina <jkosina@...e.cz> To: Andrew Duggan <aduggan@...aptics.com> cc: linux-input@...r.kernel.org, linux-kernel@...r.kernel.org, Benjamin Tissoires <benjamin.tissoires@...hat.com> Subject: Re: [PATCH] HID: rmi: print an error if F11 is not found instead of stopping the device On Wed, 6 Aug 2014, Andrew Duggan wrote: > Currently rmi_probe will return -EIO if the device doesn't report that it has F11. > This would indicate that something happened and the device is in the bootloader. > We can recover the device using a userspace firmware update tool, but it needs > access to the device through the hidraw device file. If the probe returns -EIO > the hidraw device won't be created. So instead of failing the probe, just print > an error message, but leave the device accessible from userspace. > > Signed-off-by: Andrew Duggan <aduggan@...aptics.com> > --- > drivers/hid/hid-rmi.c | 13 +++++++++---- > 1 file changed, 9 insertions(+), 4 deletions(-) > > diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c > index 0dc2514..8389e81 100644 > --- a/drivers/hid/hid-rmi.c > +++ b/drivers/hid/hid-rmi.c > @@ -909,10 +909,15 @@ static int rmi_probe(struct hid_device *hdev, const struct hid_device_id *id) > return ret; > } > > - if (!test_bit(RMI_STARTED, &data->flags)) { > - hid_hw_stop(hdev); > - return -EIO; > - } > + if (!test_bit(RMI_STARTED, &data->flags)) > + /* > + * The device maybe in the bootloader if rmi_input_configured > + * failed to find F11 in the PDT. Print an error, but don't > + * return an error from rmi_probe so that hidraw will be > + * accessible from userspace. That way a userspace tool > + * can be used to reload working firmware on the touchpad. > + */ > + hid_err(hdev, "Device failed to be properly configured\n"); Queued for 3.17 still. Thanks, -- Jiri Kosina SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists