> -----Original Message----- > From: Dmitry Torokhov [mailto:dmitry.torokhov@xxxxxxxxx] > Sent: 2014年12月5日 1:47 > To: Dudley Du > Cc: Dudley Du; rydberg@xxxxxxxxxxx; bleung@xxxxxxxxxx; > linux-input@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx > Subject: Re: [PATCH v9 15/18] input: cyapa: add gen3 trackpad device read > firmware image function support > > On Mon, Nov 10, 2014 at 11:05:39AM +0000, Dudley Du wrote: > > Thanks, Dmitry > > > > > -----Original Message----- > > > From: Dmitry Torokhov [mailto:dmitry.torokhov@xxxxxxxxx] > > > Sent: 2014?11?10? 16:40 > > > To: Dudley Du > > > Cc: rydberg@xxxxxxxxxxx; Dudley Du; bleung@xxxxxxxxxx; > > > linux-input@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx > > > Subject: Re: [PATCH v9 15/18] input: cyapa: add gen3 trackpad device read > > > firmware image function support > > > > > > On Mon, Nov 03, 2014 at 04:33:07PM +0800, Dudley Du wrote: > > > > Add read firmware image function supported for gen3 trackpad device, > > > > it can be used through debugfs read_fw interface. > > > > > > Why do we need this? Can we do the same via usespace program accessing > > > the i2c device through /dev/i2c-N? > > > > This interface is used to test and debug only. It's defined and required by the > chromium projects. > > > > And in the driver side, becase the firmware image read process is done based on > interrupt signal, > > if do this in userspace through /dev/i2c-N, there will be two issues: > > 1) for gen5, after each command, an interrupt will be asserted, so if throug > /dev/i2c-N, > > userspace program cannot get the interrupt signal. > > 2) and when the interrupt signal assert, driver won't know it’s a command signal > for image read, > > so it will try to process it as data report. > > To avoid this, additional interface must be added to mark the image read status > and > > block interrupt signal to be process as data report. > > I believe that while userspace acc4esses the device through /dev/i2c-N > you should unbind the cyapa driver from the device (via sysfs driver > core bind/unbind attribute) so that it doe snot get in the way. Once > diagnostics is done you can bind the driver back to device, restoring > normal operation. > > That is how we are planning to handle other devices at factory as > well. Thanks, I will remove the debugfs interfaces from the patach series. > > Thanks. > > -- > Dmitry This message and any attachments may contain Cypress (or its subsidiaries) confidential information. If it has been received in error, please advise the sender and immediately delete this message. ��.n��������+%������w��{.n�����{��)��^n�r������&��z�ޗ�zf���h���~����������_��+v���)ߣ�